nginx关于url美化的配置

nginx关于url美化的配置

    • 问题
    • 解决方案

问题

apache下正常运行的tp或者yii框架,迁移到nginx后无法访问

解决方案

这里主要针对两部分进行解决

  1. 重新规则,主要原因是url界面美化后,无法识别url
#在location中加入重新的判断,可以正常访问
location / {
        if (!-e  $request_filename){
            rewrite ^(.*)$ /index.php$1 last;
        }
    }
  1. 路由问题,我这里TP3.2自定义的路由规则,会显示错误
#这里不仅要执行上面那一步,还要对location ~ \.php(.*)$ 中的判断进行修改,主要针对url的
		fastcgi_pass 127.0.0.1:9000;
        include   fastcgi_params;
        set $path_info "";
        set $fastcgi_script_name_new $fastcgi_script_name;
        if ($fastcgi_script_name ~*   "^(.+\.php)(/.+)$"  ) {
            set $fastcgi_script_name_new $1;
            set $path_info $2;
        }
           
        fastcgi_param   SCRIPT_FILENAME   $document_root$fastcgi_script_name_new;
        fastcgi_param   SCRIPT_NAME   $fastcgi_script_name_new;
        fastcgi_param   PATH_INFO $path_info;

你可能感兴趣的:(nginx)