it-swarm.cn

如果您使用Nginx,您将面临哪些问题

WordPress非常耗费内存,我一直在考虑使用nginx而不是Apache。

在此之前的一个主要考虑因素是,是否有任何插件将停止工作。我已经测试了一些它们似乎工作,但我需要找出是否有任何可能会破坏。

3
Sudhanshu

我不幸没有这方面的经验,但显然可以这样做,因为这些文章和插件解决了一些问题:

你也熟悉 WP引擎WordPress托管 ?他们显然是以Apache的混合形式使用它,可能作为前端代理。

希望这些帮助。

3
MikeSchinkel

小世界 :)。你不会看到Nginx和Apache + Wordpress的很多问题。我们也将它用于我们公司,我们可以毫无疑问地让一台服务器为每个服务器提供200万个唯一身份服务,并且每个网站每月访问量超过一百万次。 Nginx + W3 Total Cache,你得到一些非常了不起的数字。

2
Vid Luther

最大的区别是重写规则,但有很多指南(例如Mike链接的)为您提供等效的重写规则。

从插件的角度来看,除非插件正在做某事真的疯了,否则它应该不知道区别。所有内部重写规则和分类内容都在WordPress级别处理,与HTTPD无关。

简而言之,去吧。

1
Viper007Bond

使用Nginx不会使Wordpress使用更少的内存。如果您关心内存,可以通过优化Apache配置来节省一些服务器,只加载您需要的模块,并进行其他配置以减少Apache需要的内存。

除此之外,Apache还有值得考虑的缓存模块,因此要保存WordPress在调用时会使用的所有内存。由于WordPress输出得到缓存,Wordpress不再需要运行,而是保存内存。

1
hakre

当WordPress检测到未加载mod_rewrite时,它会回退到pathinfo,即:(/ index.php /%postname%/)永久链接在Permalink设置页面中。您可以使用 nginx兼容性 插件强制WordPress使用非常永久链接,然后向您的nginx服务器文件添加重写规则:

server { server_name mysite.com;

root /path/to/blog;

index index.php;

location / {
    try_files $uri $uri/ @wordpress;
}

location @wordpress {
    fastcgi_pass ...;
    fastcgi_param SCRIPT_FILENAME $document_root/index.php;
    include /etc/nginx/fastcgi_params;
    fastcgi_param SCRIPT_NAME /index.php;
}

location ~ \.php$ {
    try_files $uri @wordpress;
    fastcgi_index index.php;
    fastcgi_pass ...;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include /etc/nginx/fastcgi_params;
}

}
0
Chris_O

这些文档用俄语写成,有些模糊。有时您会想知道翻译是否错​​误,或者文档是否只是一开始就不是很明确。因此,找到答案有时是耗时的和/或需要反复试验。

但是,作者似乎非常关注社区,解释配置选项。 NginX本身会给你一些反馈,例如“你不能在这里使用这个选项”。

0
PJ Brunet

我已经为Ngnix做了研究,启用了清漆缓存的wordpress设置。

用于wordpress的Nginx Virtualhost配置。

server {
        listen 127.0.0.1:8080 default_server;
        listen [::]:8080 default_server;
         root /var/www/html/wordpress;
        index index.php index.html index.htm;
        server_name yourdomain.com www.yourdomain.com;
        location / {
                        try_files $uri $uri/ /index.php?$args;
                }
         location ~ \.php$ {
                                fastcgi_pass unix:/run/php/php7.0-fpm.sock;
                                fastcgi_index index.php;
                                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                                fastcgi_param PATH_INFO $fastcgi_path_info;
                                include fastcgi_params;
                            }
}

安装清漆打开文件/ etc/default/varnish,配置如下。

DAEMON_OPTS="-a :80 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl \
             -S /etc/varnish/secret \
             -s malloc,256m"

检查运行端口。

netstat -ntulp

如果找不到netstat命令。

Sudo apt-get install -y net-tools
0
Arvind