網站url路徑優化方法完全講解 (url優化、基於tp5、API接口開發)


url優化可是網站開發的必備高階技能,先看本實例優化前后效果比較:

(同為調用前台模塊下的index控制器下的index方法)

優化前:www.tp5.com/tp5/public/index.php/index/index/index。

優化后:www.tp5.com/t。

 

可以優化這么多?對,就是能優化成這樣!是不是感覺最后效果很棒哦,來跟我一起做吧,你也網站也可以這樣哦!

優化步驟

1.修改網站文件,將url簡化為(www.tp5.com/public/index.php/index/index/index)

2.配置tp5文件,將url簡化為(www.tp5.com/index.php/index/index/index)

3.綁定前后台模塊(即路由綁定),將url簡化為(www.tp5.com/index.php/t)

4.配置虛擬主機,實現隱藏入口文件,將url簡化為(www.tp5.com/t)

(若可配合tp5官方文檔學習,效果更優,本文為升級版的服務器端url優化,與本地優化方法相似)

接下來逐步講解:

 

一、修改網站文件,將url簡化為(www.tp5.com/public/index.php/index/index/index)

1.將tp5文件夾下內容全部剪切移動到網站www.tp5.com的根目錄。

2.刪去tp5空文件夾。

 

二、配置tp5文件,將url簡化為(www.tp5.com/index.php/index/index/index)

1.將public下的兩個文件:index.php和.htaccess兩個文件剪切移動到網站www.tp5.com的根目錄。

2.修改文件index.php為:

1 // [ 應用入口文件 ] 2 
3 // 定義應用目錄
4 define('APP_PATH', __DIR__ . '/application/'); 5 //綁定前台
6 define('BIND_MODULE','index'); 7 // 加載框架引導文件
8 require __DIR__ . '/thinkphp/start.php';

其實就是將4行和6行內的 ' ../ ' 刪去

 

三、綁定前后台模塊,將url簡化為(www.tp5.com/index.php/t)

(綁定方法有很多可以通過tp5官方文檔詳細了解)

我推薦使用批量注冊的方法綁定:

目標文件:application/route.php

先注釋掉文件內的原有代碼然后寫入如下代碼:

1 //引入系統類
2 use think\Route; 3 //定義路由規則
4 Route::rule([ 5     '/t'=>'index/index/test',
6 ],'','get|post');

 

四、配置虛擬主機,實現隱藏入口文件,將url簡化為(www.tp5.com/t)

1.修改apache配置

(1)找到apache下的所有httpd.conf配置文件

(2)找到rewrite_module modules/mod_rewrite.so 去掉前面的注釋

(3)在配置文件中, AllowOverride None 將所有None 全部改為 All

(4)搜索DocumentRoot   將根目錄設置成你的入口文件那個目錄,我的是DocumentRoot  "F:\phpStudy\WWW\thinkphp5\public"

2.修改網站根目錄下的.htaccess文件為

1 <IfModule mod_rewrite.c>
2   Options +FollowSymlinks -Multiviews 3  RewriteEngine On 4 
5   RewriteCond %{REQUEST_FILENAME} !-d 6   RewriteCond %{REQUEST_FILENAME} !-f 7   RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L] 8 </IfModule>

其實只是做了一個小修改,

將原文件倒數第二行  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

改成了  RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]

就添加了一個 ‘?’ 而已

3.改完配置后,重啟apache

 

五、完全Ok啦,使用www.tp5.com/t作為api入口吧!

 

 

(本文為原創文章,轉載請注明來自:http://www.cnblogs.com/piaobodewu/)

 


免責聲明!

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



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