关于nginx隐藏index.php入口文件注意事项
Posted easyTrue
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于nginx隐藏index.php入口文件注意事项相关的知识,希望对你有一定的参考价值。
最近项目用的是nginx服务,apache怎么隐藏入口不赘述,官方文档有介绍,Nginx隐藏官方文档这样说的:
实践中,这样是不对的,应该在网站对应的vhost.conf中配置:
server { listen 80; server_name test.aaa.com; root "D:/phpstudy_pro/WWW/test.aaa.com/public"; location / { index index.php index.html error/index.html; error_page 400 /error/400.html; error_page 403 /error/403.html; error_page 404 /error/404.html; error_page 501 /error/501.html; error_page 502 /error/502.html; error_page 503 /error/503.html; error_page 504 /error/504.html; error_page 505 /error/505.html; error_page 506 /error/506.html; error_page 507 /error/507.html; error_page 509 /error/509.html; error_page 510 /error/510.html; autoindex off; if (!-e $request_filename){ rewrite ^(.*)$ /index.php?s=/$1 last; } } location ~ \\.php(.*)$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_split_path_info ^((?U).+\\.php)(/?.+)$; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include fastcgi_params; } }
重点是加上这一行:
if (!-e $request_filename){ rewrite ^(.*)$ /index.php?s=/$1 last; }
以上是关于关于nginx隐藏index.php入口文件注意事项的主要内容,如果未能解决你的问题,请参考以下文章
nginx服务器绑定多个域名支持pathinfo路由隐藏index.php入口文件