请教军哥个问题,Nginx下能不能设置虚拟目录
Nginx下能不能设置虚拟目录,并支持php,试了好多次,都不能成功支持php 可以设置,但必须也得按原来的配置加上php解析才能行 location ~ /abc/.+.php$ {root /home/;
rewrite /abc/(.*.php) /$1 break;
include fastcgi_params;
fastcgi_passunix:/tmp/php-fcgi.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/abc/$fastcgi_script_name;}
location ~ /abc/(.*)$ {
alias /home/abc/$1;
}
这样设置只支持静态html ,php死活解析不了! location /test {
alias /home/wwwroot/test/;
index index.html index.php;
}
location ~ /test/.+\.php$ {
rewrite /test/(.+\.php) /$1 break;
fastcgi_passunix:/tmp/php-cgi.sock;
fastcgi_indexindex.php;
fastcgi_paramSCRIPT_FILENAME/home/wwwroot/test/$fastcgi_script_name;
includefastcgi_params;
}
最重要的一点,这个要放在对应虚拟主机php那个location的前面 这样设置后,出现
502 Bad Gateway
错误了 修改过php-fpm的套接字配置? php-fpm,配置都没有改过啊
回复 7# 的帖子
我发的配置没问题,已经测试过了,你贴上你整个虚拟主机的配置文件看看 俺不是在虚拟主机的配置加的代码,而是在主配置(/usr/local/nginx/conf/nginx.conf)里加虚拟目录的回复 9# 的帖子
贴整个server段配置回复 10# 的帖子
server{
listen 80 default;
#listen [::]:80 default ipv6only=on;
server_name localhost;
index index.html index.htm index.php;
root/web/wwwww;
location /test {
alias /home/test/;
index index.html index.php;
}
location ~ /test/.+\.php$ {
rewrite /test/(.+\.php) /$1 break;
fastcgi_passunix:/tmp/php-fcgi.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/test/$fastcgi_script_name;
includefastcgi_params;
}
#error_page 404 /404.html;
location ~ [^/]\.php(/|$)
{
# comment try_files $uri =404; to enable pathinfo
try_files $uri =404;
fastcgi_passunix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
#include pathinfo.conf;
}
location /nginx_status {
stub_status on;
access_log off;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
location ~ /\.ht {
deny all;
}
access_log/web/wwwlogs/access.logaccess;
} 可能php-fpm启动,也可能是https://bbs.vpser.net/thread-1144-1-1.html 这里的其他原因
回复 12# 的帖子
军哥!您这样试过成功吗?看来php-fpm 真有点不稳定啊? 测试过了
http://116.251.209.38/test/p.php
http://116.251.209.38/test/d.txt 俺用的是PHP 5.2.17,不知道这个影响吗?
页:
[1]
2