Home >Backend Development >PHP Tutorial >Nginx Alias 无法解析PHP的解决方法

Nginx Alias 无法解析PHP的解决方法

WBOY
WBOYOriginal
2016-06-13 11:37:281186browse

Nginx Alias 无法解析PHP的解决办法

Nginx Alias 无法解析PHP的解决办法:

server {
??????? listen?????? 80;
??????? server_name? xxxx.com.cn;


??????? error_log? /tmp/eror.log;
??????? set $www_root /home/web/yqbb/bgskk;


??????? location / {
??????????? root?? $www_root;
??????????? index? index.html index.php;
??????? }


??????? location /feedback {
??????????? index? index.php;
??????????? alias /home/web/yqbb/bgskk/app/htdocs;
??????? }


??????? error_page?? 500 502 503 504? /50x.html;
??????? location = /50x.html {
??????????? root?? html;
??????? }


??????? location ~ ^/feedback/.+\.php$ {
??????????????? root /home/web/yqbb/bgskk/app/htdocs;
??????????????? rewrite /feedback/(.*\.php?) /$1 break;
??????????????? include fastcgi.conf;
??????????????? fastcgi_pass?? 127.0.0.1:9000;
??????????????? fastcgi_index? index.php;
??????????????? fastcgi_param SCRIPT_FILENAME /home/web/yqbb/bgskk/app/htdocs/$fastcgi_script_name;
??????? }


??????? location ~ .*\.(php|php5)?$ {
??????????????? fastcgi_pass? 127.0.0.1:9000;
??????????????? fastcgi_index index.php;
??????????????? include fastcgi.conf;
??????? }


??? }


?

?

server
??? {
??????? listen 80;? #端口号
??????? server_name www.linuxidc.com;?? #域名
??????? index index.html index.htm index.php index.shtml;? #默认首页
??????? root? /var/www/html;? #网站根目录
??????? charset gbk;??? #默认编码

??????? location /public/? #设定要重写的目录名
??????? {
??????????????? alias /var/www/public/; #重定向目的目录。

??????????????? #例:如果用户访问http://www.linuxidc.com/public/test.html 不会访问/var/www/html/public/test.html,而访问的是/var/www/public/test.html,虽然这个文件并没有在域名目录下
??????? }

#做完上面的设置后,我们发现访问PHP文件http://www.linuxidc.com/public/test.php时,还是去访问了/var/www/html/public/test.php,也就是说访问php文件没有起到重定向的作用,所以我们还要配置如下这段

#start


??????? location ~ ^/public/.+\.php$
??????? {
??????????????? root /var/www/html/web/news/public;
??????????????? rewrite /public/(.*\.php?) /$1 break;
??????????????? include fastcgi.conf;
??????????????? fastcgi_pass?? 127.0.0.1:9000;
??????????????? fastcgi_index? index.php;
??????? }

#end


??????? location ~ .*\.(php|php5)?$
??????? {
??????????? #fastcgi_pass? unix:/tmp/php-cgi.sock;
??????????? fastcgi_pass? 127.0.0.1:9000;
??????????? fastcgi_index index.php;
??????????? #include fcgi.conf;
??????????? include fastcgi.conf;
??????????? rewrite? ^/([a-zA-Z]+)\/([a-zA-Z]+)$ /$2.shtml last;
??????? }

??????? location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
??????? {
??????????? expires????? 30d;? #缓存30天
??????? }

??????? location ~ .*\.(js|css)?$
??????? {
??????????? expires????? 1h; #缓存1个小时
??????? }

??????? access_log? /var/log/linuxidc.log? access;? #定义日志文件
??????? ssi on;
??????? ssi_silent_errors on;
??????? ssi_types text/shtml;
??? }

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn