关于nginx隐藏index.php入口文件注意事项

最近项目用的是nginx服务,apache怎么隐藏入口不赘述,官方文档有介绍,Nginx隐藏官方文档这样说的:

关于nginx隐藏index.php入口文件注意事项

 

实践中,这样是不对的,应该在网站对应的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入口文件注意事项

上一篇:CSS优先级的两种理解方式


下一篇:kubernetes 1.18.3 版本 二进制部署