End.

nginx配置发布yii2项目的server配置

nginx配置可参考《centos7 搭建 LNMP环境 (PHP7、Mysql5.7)


当lnmp环境能正常运行,我们只需要稍微修改 location / {}的内容 即路由规则,我们根据yii2的官方推荐写法: if (!-e $request_filename){ rewrite ^/(.*) /index.php last; }; 意思大概是,如果找不到请求的页面,重定向到yii2入口文件index.php,。

如下是我测试可用的配置:

server {
        listen       80;
        server_name  www.yii-advanced.com;
        root         /mnt/hgfs/yii2-app-advanced/backend/web;
        index index.php index.html index.htm;

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

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }

        location ~ .php$ {
          try_files $uri =404;
          root /mnt/hgfs/yii2-app-advanced/backend/web;
          fastcgi_pass 127.0.0.1:9000;
          fastcgi_index index.php;
          fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
          include fastcgi.conf;
        }

}

the End.

End.