nginx 多站點配置方法集合
2024-08-30 12:27:18
供稿:網友
那么我們開始吧:
1、為我們的站點創建配置文件
我是這么做的,在nginx的配置文件conf目錄下創建一個專門存放VirtualHost的目錄,命名為vhosts_conf,可以把虛擬目錄的配置全部放在這里。在里面創建名為vhosts_modoupi_websuitA.conf的配置文件并打開,我們在這里做配置,往里面寫:
代碼如下:
server {
listen 80; #監聽的端口號
server_name websuitA.com; #域名
#access_log logs/host.access.log main;
location / {
root X:/wnmp/www/websuitA; #站點的路徑
index default.php index.php index.html index.htm;
#站點的rewrite在這里寫
rewrite ^/(/w+)/.html$ /$1.php;
rewrite ^/(/w+)/(/w+)$ /$1/$2.php;
}
#錯誤頁的配置
error_page 404 /error.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ /.php$ {
root X:/wnmp/www/websuitA;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ //.ht {
deny all;
}
}
這樣就做好了,站點A的配置,同樣的方法,做websuitB的配置,這里我命名為vhosts_modoupi_websuitB.conf,直接上代碼
代碼如下:
server {
listen 80; #監聽的端口號
server_name websuitB.com; #域名
#access_log logs/host.access.log main;
location / {
root X:/wnmp/www/websuitB; #站點的路徑
index default.php index.php index.html index.htm;
#站點的rewrite在這里寫
rewrite ^/(/w+)/.html$ /$1.php;
rewrite ^/(/w+)/(/w+)$ /$1/$2.php;
}
#錯誤頁的配置
error_page 404 /error.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ /.php$ {
root X:/wnmp/www/websuitB;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ //.ht {
deny all;
}
}
這樣,兩個站點的配置就OK了。
2、在nginx的主配置文件里,包含這兩個站點的配置文件。
我們打開conf目錄下的nginx.conf文件,很容易做,只要在http{...}段輸入以下代碼: