ThinkPHP在Apache和Nginx下去除index.php方法


由於項目需要,用ThinkPHP開發的程序鏈接要去除index.php下面說下如何解決。
一.Nginx方法

由於nginx不支持PATH_INFO,所以需要進入linux終端找到nginx 的配置文件nginx.conf添加如下代碼:

1
2
3
4
5
6
location /
{ if (!-e $request_filename)
    {
        rewrite ^(.*)$ /index.php?s=$1 last; break;
    }
}

使用如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
server
  { listen 80;
    server_name www.blhere.com; index index.html index.htm index.php;
    root  /data/htdocs/wwwroot/www; #limit_conn   crawler  20; location /
    { if (!-e $request_filename)
        {
            rewrite ^(.*)$ /index.php?s=$1 last; break;
        }
    }

    location ~ .*\.(php|php5)?$
    { #fastcgi_pass  unix:/tmp/php-cgi.sock; fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      include fcgi.conf;
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
      expires 30d;
    }

    location ~ .*\.(js|css)?$
    {
      expires 1h;
    }
}

二.Apache方法
網站的根目錄下建立文件.htaccess,然后添加如下代碼

1
2
3
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM