ThinkPHP5 Nginx 配置

小弟配置 Nginx 力求简单明了,禁止直接调用 .php 文件,杜绝安全隐患,同时允许读取静态资源文件。

server
{
    listen    80;
    server_name   thinkphp.com;
    index index.html index.htm index.php;
    root /usr/local/web/thinkphp/public;
    # 禁止读取 svn 文件
    location ~ ^(.*)\/\.svn\/ 
    {
            return 404;
    }
    # 禁止允许 .php 文件
    location ~ \.php 
    {
            return 444;
    } 
    # 允许访问静态资源
    location ~ (/static/)|(favicon\.ico$) 
    {
            try_files $uri =404;
    }
    location / 
    {
        # try_files $uri  /index.php?$query_string;
        rewrite ^/(.*)$ /index.php?s=/$1;
        location = /index.php  
        {
             # 开启 PATH_INFO 
            fastcgi_split_path_info ^(.+\.php)(.*)$; 
            fastcgi_param PATH_INFO $fastcgi_path_info; 
            fastcgi_pass   unix:/dev/shm/php-cgi.sock;
            fastcgi_index  index.php;
            include fastcgi.conf;
        }
    }
}

引用:
简单配置nginx使之支持pathinfo

老朱亲自写的,最完美ThinkPHP Nginx 配置文件

thinkphp5 的 nginx 配置文件

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容