關於偽靜態的實現方法

2022-03-11 16:43:40 字數 1743 閱讀 8136

php怎麼實現呢,具體方法如下:

apache伺服器:

利用apache的mod_rewrite模組

1.檢測apache是否支援"mod_rewrite"

開啟您的apache安裝目錄「/apache/conf/」 下的 httpd.conf 檔案,通過ctrl+f查詢到「loadmodule rewrite_module」,檢視前面的」#」號是否已刪除,沒有刪除的,直接刪除即可。

如果沒有查詢到,則到「loadmodule」 區域,在最後一行加入「loadmodule rewrite_module modules/mod_rewrite.so」,然後重啟apache伺服器即可。

2.讓apache伺服器支援".htaccess"

如何讓自己的本地apache伺服器支援」.htaccess」呢?其實只要簡單修改一下apache的httpd.conf設定就可以讓 apache支援".htaccess"了。開啟httpd.conf檔案後,查詢

options followsymlinks

allowoverride none

改為options followsymlinks

allowoverride all

3.建立」.htaccess」檔案

如果是在windows平台下,有以下幾種方法來建立這個檔案:

(1)開啟文字編輯器,新建文件,另存為,在檔名視窗輸入」.htaccess」並選擇檔案型別為所有,然後點選儲存就行了。

(2)首先建立乙個」htaccess.txt」,然後進入cmd命令列視窗,通過cd切換到」htaccess.txt」檔案所在的目錄,然後輸入命令:rename htaccess.txt .htaccess ,回車即可。

(3)通過ftp軟體建立檔案或重新命名。

4.rewrite規則學習

我們新建乙個.htaccess檔案之後,就在裡面寫入以下內容:

rewriteengine on

rewriterule ([0-9])$ index.php?id=$1

rewriteengine為重寫引擎開關on為開啟off為關閉

rewriterule是重寫規則,支援正規表示式的,上面的([0-9])是指由數字組成的,$是結束標誌,說明是以數字結束!

好吧,現在我們可以實現偽靜態頁面了,寫下一下的規則:

rewriteengine on

rewriterule test/([a-za-z])-([0-9])$ test/index.php?action=$1&search=$2

test/([a-za-z])-([0-9])$是規則,$是正規表示式的結束符

test/index.php?action=$1&id=$2是要替換的格式,$1代表第乙個括號匹配的值,$2代表第二個,以此類推!!

我們寫乙個處理的php指令碼:index.php

php**

<?php

echo '你的查詢引數action是:' . $_get['action'];

echo '

';echo '你的查詢引數search是:' . $_get['search'];

?>

好了,我們現在在瀏覽器中輸入:

test/list-5

輸出的是:

你的查詢引數action是:list

你的查詢引數search是:5

以上參考:

iis伺服器:

iis的重定向需要借助外掛程式:url rewrite,這個後續再填

偽靜態的實現方法

偽靜態不是優化效率的方案,它指的是url優化的一種方式。取決於是否存在查詢引數 querystring 動態的url script.php?param value key value 靜態的url pathinfo script.php param value key value.html 靜態化u...

偽靜態的實現方法

偽靜態不是優化效率的方案,它指的是url優化的一種方式。取決於是否存在查詢引數 querystring 動態的url script.php?param value key value 靜態的url pathinfo script.php param value key value.html 靜態化u...

偽靜態的實現

所謂的偽靜態頁面,就是指的url重寫,在asp.net中實現非常簡單 首先你要在你的專案裡引用兩個dll actionlessform.dll urlrewriter.dll 真正實現重寫的是 urlrewriter.dll 但是如果你要實現分頁,那麼必須使用這個actionlessform dll...