: This article mainly introduces how to solve the problems that do not support pathinfo mode and the existing 404,500 problems in nginx + thinkphp. if you are interested in PHP tutorials, refer to it. After two days of nginx environment problems, I found that many posts on the Internet were either copied and pasted, or they did not close the post. I also wrote a sentence like "haha, I solved it myself, in this case, I despise the people who post these posts. if you ask a question, you will not be able to give an explanation if the problem is solved. I am still searching for the first few pages. I have never thought about the feelings of people who need answers. Looking at the answer with joy, I found that there was no ending post. Okay, let's just move on to the topic.
In this way, you do not need to change URL_Model to rewrite/compatible:
There are about 43rd lines. modify the code according to the following. pay attention to the symbols in detail:
Location /{
Root C:/Zend/workspaces; # // This is the root directory of your project.
Index index.html index.htm index. php;
If (! -E $ request_filename ){
Rewrite ^/(. *) $/index. php/$1 break;
Break;
}
}
In the php configuration, set location ~ \. Php $ changed to location ~ \. Php, once again stressed, pay attention to the details. the $ symbol is removed here. at the beginning, it is also because of this reason that I have not been able to solve it.
Location ~ \. Php {
Root C:/Zend/workspaces;
Fastcgi_pass 127.0.0.1: 9000;
Fastcgi_index index. php;
Fastcgi_param SCRIPT_FILENAME C:/wnmp/php $ fastcgi_script_name;
Include fastcgi_params;
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_FILENAME $ document_root $ real_script_name;
Fastcgi_param SCRIPT_NAME $ real_script_name;
Fastcgi_param PATH_INFO $ path_info;
}
If the problem persists, add the configuration define ('_ PHP_FILE _', $ _ SERVER ['script _ name']) to the index. php file of the ThinkPHP Portal.
During this period, you may encounter 500,404 of problems, but remember to be careful. As long as you follow this change, there is basically no problem. If you have any questions, please leave a message.
Solution source reference: http://www.codesth.com/%E4%B8%8D%E7%94%A8rewrite%E5%85%BC%E5% AE %B9%EF%BC%8C%E8%A7%A3%E5%86%B3nginx%E4%B8%8D%E6%94%AF%E6%8C%81thinkphp-pathinfo%E6%A8%A1%E5%BC%8F/
The above describes how to solve the problem that does not support the pathinfo mode and the existing 404,500 problems in nginx + thinkphp, including some content, and hope to help those who are interested in the PHP Tutorial.