让军哥的lnmp1.0支持pathinfo模式
在网上找了很多写法,貌似都不支持LNMP1.0!!
我这里有一个军哥发的,测试过,可行!
首先,在ssh中执行
touch /usr/local/nginx/conf/pathinfo.conf
创建pahtinfo.conf文件
然后在这个文件中添加以下内容
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;
再将虚拟主机配置文件里的location ~ ..(php|php5)?$ 替换为:location ~ ..php
再在include fcgi.conf; 下面添加一行include pathinfo.conf;
重启nginx
完整的虚拟主机配置文件如下:
server
{
listen 80;
server_name iw3c.com;
index index.html index.htm index.php;
root /home/wwwroot/iw3c;
<span class="highlight-nx">location</span> <span class="highlight-o">~</span> <span class="highlight-p">.</span><span class="highlight-o">*</span><span class="highlight-p">.</span><span class="highlight-nx">php</span>
<span class="highlight-p">{</span>
<span class="highlight-nx">try_files</span> <span class="highlight-nx">$uri</span> <span class="highlight-o">=</span><span class="highlight-mi">404</span><span class="highlight-p">;</span>
<span class="highlight-nx">fastcgi_pass</span> <span class="highlight-nx">unix</span><span class="highlight-o">:</span><span class="highlight-err">/tmp/php-cgi.sock;</span>
<span class="highlight-nx">fastcgi_index</span> <span class="highlight-nx">index</span><span class="highlight-p">.</span><span class="highlight-nx">php</span><span class="highlight-p">;</span>
<span class="highlight-nx">include</span> <span class="highlight-nx">fcgi</span><span class="highlight-p">.</span><span class="highlight-nx">conf</span><span class="highlight-p">;</span>
<span class="highlight-nx">include</span> <span class="highlight-nx">pathinfo</span><span class="highlight-p">.</span><span class="highlight-nx">conf</span><span class="highlight-p">;</span>
<span class="highlight-p">}</span>
<span class="highlight-nx">location</span> <span class="highlight-o">/</span><span class="highlight-nx">status</span> <span class="highlight-p">{</span>
<span class="highlight-nx">stub_status</span> <span class="highlight-nx">on</span><span class="highlight-p">;</span>
<span class="highlight-nx">access_log</span> <span class="highlight-nx">off</span><span class="highlight-p">;</span>
<span class="highlight-p">}</span>
<span class="highlight-nx">location</span> <span class="highlight-o">~</span> <span class="highlight-p">.</span><span class="highlight-o">*</span><span class="highlight-p">.(</span><span class="highlight-nx">gif</span><span class="highlight-o">|</span><span class="highlight-nx">jpg</span><span class="highlight-o">|</span><span class="highlight-nx">jpeg</span><span class="highlight-o">|</span><span class="highlight-nx">png</span><span class="highlight-o">|</span><span class="highlight-nx">bmp</span><span class="highlight-o">|</span><span class="highlight-nx">swf</span><span class="highlight-p">)</span><span class="highlight-nx">$</span>
<span class="highlight-p">{</span>
<span class="highlight-nx">expires</span> <span class="highlight-mi">30</span><span class="highlight-nx">d</span><span class="highlight-p">;</span>
<span class="highlight-p">}</span>
<span class="highlight-nx">location</span> <span class="highlight-o">~</span> <span class="highlight-p">.</span><span class="highlight-o">*</span><span class="highlight-p">.(</span><span class="highlight-nx">js</span><span class="highlight-o">|</span><span class="highlight-nx">css</span><span class="highlight-p">)</span><span class="highlight-o">?</span><span class="highlight-nx">$</span>
<span class="highlight-p">{</span>
<span class="highlight-nx">expires</span> <span class="highlight-mi">12</span><span class="highlight-nx">h</span><span class="highlight-p">;</span>
<span class="highlight-p">}</span>
<span class="highlight-p">}</span>
这个只是更改nginx的配置,和程序没有关系,你再看下你的程序吧
求助,按照这个方法开启后,所有的/index.php?g=xx&m=Index&a=xx都变成了/.php?g=xx&m=Index&a=xx,怎么解决
谢谢,帮了我大忙~