nginx 配置隐藏index.php效果

时间:2021-10-24 19:59:33
location / {
            if (!-e $request_filename) {
                rewrite  ^(.*)$  /index.php?s=/$1  last;
            }
}

完整如下

server
    {
        listen 80;
        #listen [::]:80 default_server ipv6only=on;
        server_name jiqing.dexin.com;
        index index.html index.htm index.php admin.php;
        root  /home/wwwroot/default/dexin/dragon/public;

        #error_page   404   /404.html;
        include enable-php-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 ~ /\.
        {
            deny all;
        }

        location / {
            if (!-e $request_filename) {
                rewrite  ^(.*)$  /index.php?s=/$1  last;
            }
        }

        access_log  /home/wwwlogs/access.log;
    }

它的功能很简单,如果请求的文件不存在,自动加上index.php。
这样,它既支持index.php/Home/index。也支持/Home/index