thinkphp index.php隱藏的方法:1、在httpd.ini文件添加內容“RewriteRule (.*)$ /index.php?s=$1[I]”;2、在nginx.conf中配置轉發規則“rewrite ^(.*)”。
本教程操作環境:Windows7系統、thinkphp v6版,該方法適用于所有品牌電腦。
thinkphp隱藏index.php
為了更好的實現SEO優化,我們需要隱藏URL地址中的index.php,由于不同的服務器環境配置方法區別較大,apache環境下面的配置我們可以參考5.9 URL重寫來實現,就不再多說了,這里大概說明下iis和Nginx下面的基本配置方法和思路.
立即學習“PHP免費學習筆記(深入)”;
IIS環境
如果你的服務器環境支持ISAPI_Rewrite的話,可以配置httpd.ini文件,添加下面的內容:
RewriteRule (.*)$ /index.php?s=$1 [I]
在IIS的高版本下面可以配置web.Config,在中間添加rewrite節點:
name="OrgPage"?stopProcessing="true"> url="^(.*)$"?/> logicalGrouping="MatchAll"> input="{HTTP_HOST}"?pattern="^(.*)$"?/> input="{REQUEST_FILENAME}"?matchType="IsFile"?negate="true"?/> input="{REQUEST_FILENAME}”?matchType="IsDirectory"?negate="true"?/> type="Rewrite"?url="index.php/{R:1}"?/>
Nginx環境
在Nginx低版本中,是不支持PATHINFO的,但是可以通過在Nginx.conf中配置轉發規則實現:
location?/?{?//?…..省略部分代碼 if?(!-e?$request_filename)?{ rewrite?^(.*)$?/index.php?s=$1?last; break; } }
其實內部是轉發到了ThinkPHP提供的兼容模式的URL,利用這種方式,可以解決其他不支持PATHINFO的WEB服務器環境,如果你的ThinkPHP安裝在二級目錄,Nginx的偽靜態方法設置如下,其中youdomain是所在的目錄名稱.
location?/youdomain/?{ if?(!-e?$request_filename){ rewrite?^/youdomain/(.*)$?/youdomain/index.php?s=$1?last; } }
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END
喜歡就支持一下吧
相關推薦