推薦:《thinkphp教程》
在tp5中官方給出的去隱藏index.php方法如下:
httpd.conf
配置文件中加載了mod_rewrite.so
模塊AllowOverride None
將None
改為 All
.htaccess
文件放到應用入口文件的同級目錄下<IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]</IfModule>
在Nginx低版本中,是不支持PATHINFO的,但是可以通過在Nginx.conf
中配置轉發規則實現:
location / { // …..省略部分代碼 if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; } }
本人本地環境如下:phpstudy2018。官方給出的方法在一些集中的PHP環境中應該是可用的(本人沒測過)。
今天本人配了一thinkadmin,折騰許久去不掉index.php。
改進方法有如下幾種:
1、在index.php后面加個問號。如果從url地扯上理解,應該是問號后面算是參數(tp實現MVC原理就根據這個了),我寫過dede二開,也是傳不同參數調用不同方法。
RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
2、用tp phpinfo兼容模式,即加了s
RewriteRule ^(.*)$ index.php?s=$1 [QSA,PT,L]
3、加上PHPINFO參數
RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com