日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

ThhinkPHP5隐藏入口文件index.php

發(fā)布時(shí)間:2024/9/30 php 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ThhinkPHP5隐藏入口文件index.php 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

原文鏈接1:https://blog.csdn.net/lw545034502/article/details/79374172/

原文鏈接2:https://www.cnblogs.com/chq3272991/p/5757673.html

1.Tp3.2.3中有幾種路由模式

注:每種模式后面括號(hào)內(nèi)的0,1,2,3代表TP中對(duì)應(yīng)的編號(hào)
? 第一種:普? 通? ?模式(0):www.tp.nn/index.php?m=Home&c=Index&a=index
? ????????????????? ? 缺點(diǎn):URL地址中顯示內(nèi)容太多,不安全
? 第二種:pathinfo 模式(1):www.tp.nn/index.php/Home/Index/index??默認(rèn)模式
????????????????????? 優(yōu)點(diǎn):簡化了URL地址
? 第三種:rewrite? 模式(2):www.tp.nn/Home/Index/index? ? ? ? ? ??個(gè)人建議使用模式
????????????????????? 優(yōu)點(diǎn):簡短,隱秘 (目錄中不顯示index.php)
??????????????????????使用rewrite模式需要兩步操作:? ??

  • ?apache中開啟rewrite模塊,修改配置文件? ??
  • ?將源碼包中的.htaccess文件復(fù)制到項(xiàng)目根目錄

?????? 第四種:兼? 容? ?模式(3):www.tp.nn/index.php?s=/Home/Index/index

???????一般不使用該模式,只有當(dāng)某些古老主機(jī)不支持pathinfo和rewrite模式,或者Apache沒有開啟pathinfo時(shí)使用。

?

?

?

?

?

2.TP5中apache隱藏入口文件

官方介紹是這樣的:http://www.kancloud.cn/thinkphp/thinkphp5_quickstart/145250

可以去掉URL地址里面的入口文件index.php,但是需要額外配置WEB服務(wù)器的重寫規(guī)則。

以Apache為例,需要在入口文件的同級(jí)添加.htaccess文件(官方默認(rèn)自帶了該文件),內(nèi)容如下:

<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>

接下來就可以使用下面的URL地址訪問了

http://tp5.com/index/index/index http://tp5.com/index/index/hello

如果你使用的apache版本使用上面的方式無法正常隱藏index.php,可以嘗試使用下面的方式配置.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> 但是還是不行,查到這么一篇文章(http://bbs.php100.com/simple/?t300372.html): Apache Rewrite 擬靜態(tài)配置 1、mod_rewrite 簡介和配置 Rewirte主要的功能就是實(shí)現(xiàn)URL的跳轉(zhuǎn)和隱藏真實(shí)地址,基于Perl語言的正則 表達(dá)式規(guī)范。平時(shí)幫助我們實(shí)現(xiàn)擬靜態(tài),擬目錄,域名跳轉(zhuǎn),防止盜鏈等 如一個(gè)普通訪問地址為?? ?? */php100.php?id=2 可以轉(zhuǎn)成: ?? */PHP100_2.html 或轉(zhuǎn)成: ?? */PHP100_2/ Apache配置: 支持httpd.conf 配置和目錄 .htaccess配置 啟用rewrite # LoadModule rewrite_module modules/mod_rewrite.so 去除前面的 # LoadModule rewrite_module modules/mod_rewrite.so 啟用.htaccess AllowOverride None????修改為: AllowOverride All 2、mod_rewrite 規(guī)則的使用 RewriteEngine on RewriteCond %{HTTP_HOST} !^www.php100.com??[NC] RewriteRule?? ^/(.*) http://www.php100.com/ [L] 啟動(dòng)rewrite引擎 判斷主機(jī) 跳轉(zhuǎn)到 RewriteEngine on RewriteRule ^/test([0-9]*).html$ /test.php?id=$1 RewriteRule ^/new([0-9]*)/$ /new.php?id=$1 [R] 3、mod_rewrite 規(guī)則修正符 1) R 強(qiáng)制外部重定向 2) F 禁用URL,返回403HTTP狀態(tài)碼。 3) G 強(qiáng)制URL為GONE,返回410HTTP狀態(tài)碼。 4) P 強(qiáng)制使用代理轉(zhuǎn)發(fā)。 5) L 表明當(dāng)前規(guī)則是最后一條規(guī)則,停止分析以后規(guī)則的重寫。 6) N 重新從第一條規(guī)則開始運(yùn)行重寫過程。 7) C 與下一條規(guī)則關(guān)聯(lián) 如果規(guī)則匹配則正常處理,以下修正符無效 8) T=MIME-type(force MIME type) 強(qiáng)制MIME類型 9) NS??只用于不是內(nèi)部子請(qǐng)求 10) NC 不區(qū)分大小寫 11) QSA 追加請(qǐng)求字符串 12) NE 不在輸出轉(zhuǎn)義特殊字符?? \%3d$1??等價(jià)于 =$1 ----------------------------------------------------------------------------- 也就是最后還要補(bǔ)充這么處理:

把 #LoadModule rewrite_module modules/mod_rewrite.so 前面的#去掉,?
再把權(quán)限AllowOverride None都改為AllowOverride All ,重啟apache

總結(jié)

以上是生活随笔為你收集整理的ThhinkPHP5隐藏入口文件index.php的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。