最近项目用的是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; }