我们可以将nginx用于wordpress和drupal吗?

时间:2013-03-05 05:07:41

标签: wordpress drupal configuration nginx debian

我有一台debian机器,我为我的web服务器工作进程安装了nginx。但是我们只需要在/etc/nginx/sites-enabled/的默认nginx配置中为wordpress更改一点!

/etc/nginx/sites-enabled/wordpress.com
/etc/nginx/sites-enabled/drupal.com

我可以在单个debian机器下了解这两个网站的样本nginx配置吗。

1 个答案:

答案 0 :(得分:5)

您可以使用nginx运行多个站点,类似于apache vhost。

/ etc / nginx / sites-enabled 中,您可以添加两个虚拟主机

wordpress.example.com

server {
       listen 80;
       server_name wordpress.example.com;
       root /var/www/wordpress;
#      if ($http_host != "www.example.com") {
#                rewrite ^ http://www.example.com$request_uri permanent;
#      }
       index index.php index.html;
       location = /favicon.ico {
                log_not_found off;
                access_log off;
       }
       location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
       }
       # Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac).
       location ~ /\. {
                deny all;
                access_log off;
                log_not_found off;
       }
       location / {
                try_files $uri $uri/ /index.php?$args;
       }
       # Add trailing slash to */wp-admin requests.
       rewrite /wp-admin$ $scheme://$host$uri/ permanent;
       location ~*  \.(jpg|jpeg|png|gif|css|js|ico)$ {
                expires max;
                log_not_found off;
       }
       location ~ \.php$ {
                try_files $uri =404;
                include /etc/nginx/fastcgi_params;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       }
}

drupal.example.com

server {
       listen 80;
       server_name drupal.example.com;
       root /var/www/drupal;
#      if ($http_host != "www.example.com") {
#                rewrite ^ http://www.example.com$request_uri permanent;
#      }
       index index.php index.html;
       location = /favicon.ico {
                log_not_found off;
                access_log off;
       }
       location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
       }
       # Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac).
       location ~ /\. {
                deny all;
                access_log off;
                log_not_found off;
       }
       location / {
                try_files $uri $uri/ /index.php?$args;
       }
       # Add trailing slash to */wp-admin requests.
       rewrite /wp-admin$ $scheme://$host$uri/ permanent;
       location ~*  \.(jpg|jpeg|png|gif|css|js|ico)$ {
                expires max;
                log_not_found off;
       }
       location ~ \.php$ {
                try_files $uri =404;
                include /etc/nginx/fastcgi_params;
                fastcgi_pass 127.0.0.1:9001;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       }
}