您好,登錄后才能下訂單哦!
使用thinkPHP5.0框架怎么訪問URL?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
URL設計
ThinkPHP5.0在沒有啟用路由的情況下典型的URL訪問規則是:
http://serverName/index.php(或者其它應用入口文件)/模塊/控制器/操作/[參數名/參數值...]
支持切換到命令行訪問,如果切換到命令行模式下面的訪問規則是:
>php.exe index.php(或者其它應用入口文件) 模塊/控制器/操作/[參數名/參數值...]
可以看到,無論是URL訪問還是命令行訪問,都采用PATH_INFO訪問地址,其中PATH_INFO的分隔符是可以設置的。
注意:5.0取消了URL模式的概念,并且普通模式的URL訪問不再支持,如果不支持PATHINFO的服務器可以使用兼容模式訪問如下:
http://serverName/index.php(或者其它應用入口文件)?s=/模塊/控制器/操作/[參數名/參數值...]
必要的時候,我們可以通過某種方式,省略URL里面的模塊和控制器。
URL大小寫
默認情況下,URL是不區分大小寫的,也就是說 URL里面的模塊/控制器/操作名會自動轉換為小寫,控制器在最后調用的時候會轉換為駝峰法處理。
例如:
http://localhost/index.php/Index/Blog/read
// 和下面的訪問是等效的
http://localhost/index.php/index/blog/read
如果訪問下面的地址
http://localhost/index.php/Index/BlogTest/read
// 和下面的訪問是等效的
http://localhost/index.php/index/blogtest/read
在這種URL不區分大小寫情況下,如果要訪問駝峰法的控制器類,則需要使用:
http://localhost/index.php/Index/blog_test/read
如果希望URL訪問嚴格區分大小寫,可以在應用配置文件中設置:
// 關閉URL中控制器和操作名的自動轉換 'url_convert' => false,
一旦關閉自動轉換,URL地址中的控制器名就變成大小寫敏感了,例如前面的訪問地址就要寫成:
http://localhost/index.php/Index/BlogTest/read
但是下面的URL訪問依然是有效的:
http://localhost/index.php/Index/blog_test/read
下面的URL訪問則無效:
http://localhost/index.php/Index/blogtest/read
需要注意:路由規則中定義的路由地址是按照控制器名的實際名稱定義(區分大小寫)。
隱藏入口文件
在ThinkPHP5.0中,出于優化的URL訪問原則,還支持通過URL重寫隱藏入口文件,下面以Apache為例說明隱藏應用入口文件index.php的設置。
下面是Apache的配置過程,可以參考下:
1、httpd.conf配置文件中加載了mod_rewrite.so模塊
2、AllowOverride None 將None改為 All
3、在應用入口文件同級目錄添加.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>
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。