nginx支持thinkphp的pathinfo解决方法

WBOY
Freigeben: 2016-06-13 12:08:44
Original
1022 Leute haben es durchsucht

nginx支持thinkphp的pathinfo
现在发现问题有两个:
1 不支持PATHINFO。
         localhost/?m=login可以访问,localhost/login不能访问。
2 THINKPHP的U方法生成的地址错误。
         U('login/index')生成的地址是/login-index.html。

nginx配置文件:
location ~ \.php$ {
            root           D:/AppServ/www;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;

            set $path_info "";
            set $real_script_name $fastcgi_script_name;
            if ( $fastcgi_script_name ~ "^(.+?\.php)(/.+)$" ) {
                set $real_script_name $1;
                set $path_info $2;
            }
            fastcgi_param  SCRIPT_NAME $real_script_name;
            fastcgi_param  PATH_INFO $path_info; 

            include        fastcgi_params;
        }

.htacess:

RewriteEngine on
RewriteRule ^(.*)$ index.php/$1 last


nginx错误日志:
         2014/10/27 13:54:42 [error] 5404#5668: *107 CreateFile() "D:/AppServ/www/login" failed (2: The system cannot find the file specified), client: 127.0.0.1, server: localhost, request: "GET /login HTTP/1.1", host: "localhost"

------解决思路----------------------

server {<br />       listen  80;<br />       server_name     www.phpno.com;<br />       root /home/www/www_phpno_com/admin_wwwroot;<br />       access_log off;<br />       error_page 404  /404.html;<br />       location /404.html {<br />               root /home/www/www_phpno_com/admin_wwwroot;<br />       }<br />       location /{<br />               index index.html index.htm index.php;<br />               if (-e $request_filename) {<br />                       break;<br />               }<br />               if (!-e $request_filename) {<br />                       rewrite ^/(.*)$ /index.php/$1 last;<br />                       break;<br />               }<br />       }<br /> <br />       location ~ .+\.php($<br><font color='#FF8000'>------解决思路----------------------</font><br>/) {<br />           root           /home/www/www_phpno_com/admin_wwwroot;<br />           fastcgi_index index.php;<br />           fastcgi_split_path_info ^(.+\.php)(.*)$;<br />           fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;<br />           fastcgi_param   PATH_INFO               $fastcgi_path_info;<br />           fastcgi_param   PATH_TRANSLATED $document_root$fastcgi_path_info;<br />           fastcgi_pass   127.0.0.1:9000;<br />           include        fastcgi_params;<br />       }<br />   }
Nach dem Login kopieren
自己对比一下

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!