導航:首頁 > 編程語言 > phphtaccess偽靜態

phphtaccess偽靜態

發布時間:2022-11-30 02:11:51

① 如何利用.htaccess文件對php網站或文件進行偽靜態處理

利用.htaccess文件對PHP網站進行偽靜態處理要考慮兩點:
一.伺服器支持偽靜態,比如Apache要開啟mod_rewrite模塊支持
二.利用.htaccess完成偽靜態需要根據不同的網站系統進行不同的設置,以下是一些常見系統的.htaccess設定:

01.wordpress:

# BEGIN WordPress
<IfMole mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfMole>

02.Phpwind

RewriteEngine On
RewriteBase /
RewriteRule ^(.*)-htm-(.*)$ $1.php?$2
RewriteRule ^(.*)simple/([a-z0-9\_]+\.html)$ $1/simple/index.php?$2

03.Discuz

RewriteEngine On
# Rewrite 系統規則請勿修改
RewriteRule ^archiver/((fid|tid)-[0-9]+\.html)$ archiver/index.php?$1
RewriteRule ^forum-([0-9]+)-([0-9]+)\.html$ forumdisplay.php?fid=$1&page=$2
RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ viewthread.php?tid=$1&extra=page\%3D$3&page=$2
RewriteRule ^space-(username|uid)-(.+)\.html$ space.php?$1=$2
RewriteRule ^tag-(.+)\.html$ tag.php?name=$1

04.ecshop

RewriteEngine On
# direct one-word access
RewriteRule ^index\.html$ index\.php [L]
RewriteRule ^category$ index\.php [L]
# access any object by its numeric identifier
RewriteRule ^feed-c([0-9]+)\.xml$ feed\.php\?cat=$1 [L]
RewriteRule ^feed-b([0-9]+)\.xml$ feed\.php\?brand=$1 [L]
RewriteRule ^feed\.xml$ feed\.php [L]
RewriteRule ^category-([0-9]+)-b([0-9]+)-min([0-9]+)-max([0-9]+)-attr([^-]*)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html$ category\.php\?id=$1&brand=$2&price_min=$3&price_max=$4&filter_attr=$5&page=$6&sort=$7&order=$8 [QSA,L]
RewriteRule ^category-([0-9]+)-b([0-9]+)-min([0-9]+)-max([0-9]+)-attr([^-]*)(.*)\.html$ category\.php\?id=$1&brand=$2&price_min=$3&price_max=$4&filter_attr=$5 [QSA,L]
RewriteRule ^category-([0-9]+)-b([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html$ category\.php\?id=$1&brand=$2&page=$3&sort=$4&order=$5 [QSA,L]
RewriteRule ^category-([0-9]+)-b([0-9]+)-([0-9]+)(.*)\.html$ category\.php\?id=$1&brand=$2&page=$3 [QSA,L]
RewriteRule ^category-([0-9]+)-b([0-9]+)(.*)\.html$ category\.php\?id=$1&brand=$2 [QSA,L]
RewriteRule ^category-([0-9]+)(.*)\.html$ category\.php\?id=$1 [QSA,L]
RewriteRule ^goods-([0-9]+)(.*)\.html$ goods\.php\?id=$1 [QSA,L]
RewriteRule ^article_cat-([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html$ article_cat\.php\?id=$1&page=$2&sort=$3&order=$4 [QSA,L]
RewriteRule ^article_cat-([0-9]+)-([0-9]+)(.*)\.html$ article_cat\.php\?id=$1&page=$2 [QSA,L]
RewriteRule ^article_cat-([0-9]+)(.*)\.html$ article_cat\.php\?id=$1 [QSA,L]
RewriteRule ^article-([0-9]+)(.*)\.html$ article\.php\?id=$1 [QSA,L]
RewriteRule ^brand-([0-9]+)-c([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)\.html brand\.php\?id=$1&cat=$2&page=$3&sort=$4&order=$5 [QSA,L]
RewriteRule ^brand-([0-9]+)-c([0-9]+)-([0-9]+)(.*)\.html brand\.php\?id=$1&cat=$2&page=$3 [QSA,L]
RewriteRule ^brand-([0-9]+)-c([0-9]+)(.*)\.html brand\.php\?id=$1&cat=$2 [QSA,L]
RewriteRule ^brand-([0-9]+)(.*)\.html brand\.php\?id=$1 [QSA,L]
RewriteRule ^tag-(.*)\.html search\.php\?keywords=$1 [QSA,L]
RewriteRule ^snatch-([0-9]+)\.html$ snatch\.php\?id=$1 [QSA,L]
RewriteRule ^group_buy-([0-9]+)\.html$ group_buy\.php\?act=view&id=$1 [QSA,L]
RewriteRule ^auction-([0-9]+)\.html$ auction\.php\?act=view&id=$1 [QSA,L]

05.phpcms

RewriteEngine On
RewriteRule ^(.*)content-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/index\.php\?m=content&c=index&a=show&catid=$2&id=

$3&page=$4
RewriteRule ^(.*)show-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/index\.php\?m=content&c=index&a=show&catid=$2&id=

$3&page=$4
RewriteRule ^(.*)list-([0-9]+)-([0-9]+).html$ $1/index\.php\?m=content&c=index&a=lists&catid=$2&page=$3

② phpstudy偽靜態設置該怎麼做

1、輸入以下命令 cd /alidata/server/nginx/conf/rewrite再輸入ll 看看是不是像下面截圖的一樣。 2、這些就是偽靜態規則文件。我們打開phpwind.conf看看。 已經在rewrtie目錄下配置了常見程序的偽靜態規則。可以直接調用。 3、如果沒有就按照程序名.conf的命名方式新建一個配置文件 配置文件搞清楚了,你可能會說好像網站偽靜態還是啊。別著急,因為偽靜態規則是需要被網站配置文件調用才行的。 4、輸入以下命令 cd /alidata/server/nginx/conf/vhosts 進入到網站配置目錄 5、打開配置文件 修改好偽靜態調用文件 下面測試下我們配置的文件是否正確吧輸入 nginx: the configuration file /alidata/server/nginx/conf/nginx.conf syntax is ok nginx: configuration file /alidata/server/nginx/conf/nginx.conf test is successful 如果出現以上兩句話就說明配置成功了。下面重啟下nginx就可以了。

③ PHP偽靜態.htaccess文件中GET參數獲取問題

RewriteRule ^action-(\w+).html?(.*?)$ index.php?a=$1$2 [QSA,L]

正則規則裏第一個分組是a的值,後面的是query string的值。這是一個參考,具體可能要根據實際需求做更好的正則匹配。

④ php偽靜態設置求教

  1. 在httpd.ini中尋找關鍵字rewrite。有個load......so的前面的#去掉,這樣就開啟rewrite支持。記得重啟

  2. 可以在站點根目錄新建一個.htaccess文件(小技巧,windows是不能建只有後綴名的文件,你可以重命名為.htaccess.按enter就可以了自動變成.htaccess)

  3. 文件內容

    RewriteEngine On

    RewriteBase /

    RewriteRule ^id/([0-9]+) 22.php?id=$1


註:rewrite只是對url進行重寫,瀏覽器請求的url是xx.com/id/動態地址,但經過rewrite之後,即php運行的時候,地址還是xx.com/22.php?id=動態地址,所以做解析url的時候是沒有任何變化的,唯一要改的是輸出的鏈接地址要符合rewrite規則,才能看到rewrite效果,不然,你只是能解析這個地址,不代表你站內的鏈接顯示的都是你想要的rewrite地址

⑤ php偽靜態怎樣寫

Apache? 配置裡面有沒有載入 RewriteMole ?

============

1.測試httpd.conf 裡面的配置 是否配置允許重寫:
在 .htaccess 後面 隨意添加一些字元,然後訪問一個頁面是否是 500
如果是,說明配置哩的AllowOverride on 設置正確
否則 請在對應的 <Directory />節內 修改 AllowOverride None 為 AllowOverride On

2. .htaccess 文件修改為

#------------- .htaccess ----------------

RewriteEngine On
RewriteBase /
RewriteRule (.*)\.html $1.php

#------------- .htaccess ----------------

完畢~

⑥ IIS 伺服器下的PHP偽靜態要怎麼弄啊

IIS配置支持偽靜態 ISAPI Rewrite(win2003系統)

第一:首先我們需要下載一個ISAPI_Rewrite,有精簡版和完全版,一般精簡版只能對伺服器全局進行配置,而完整版可以對伺服器上的各個網站進行偽靜態配置.對於個人站長來說,精簡版就足夠了.

下載:http://www.isapirewrite.com/download/isapi_rwl_0055.msi

第二:下載完成後,可以找到安裝包里的.msi的文件,安裝即可.

隨便裝在哪都可以,默認是裝在C:\Program Files\Helicon下,要注意的是這個目錄everyone要有讀取許可權。我就因為當時伺服器許可權配的比較嚴格,默認安裝Helicon這目錄EVERYONE是沒有任何許可權的,結果老是出現:Service Unavailable 。

第三:打開Internet 信息服務,右鍵,web站點屬性,點擊ISAPI篩選器選項卡.添加篩選器,這里的名稱可以自己隨意填寫,路徑自己指定ISAPI_Rewrite.dll,然後確定.

下面我們先做一個測試頁new.asp,可以按照下面的代碼寫

然後,在瀏覽器中輸入:

http://127.0.0.1/new.asp?id=1234

接著你就可以在網頁上看到一行文字:"1234"

看到這幾個數字,就說明你測試成功了.

現在我們開始來配置ISAPI_Rewrite :

打開ISAPI_Rewrite的目錄,把httpd.ini的只讀屬性去掉,打開編輯.我們現在是需要把new.asp?id=1234修改成類似new_1234.html的路徑,因此,我們需要在httpd.ini中添加一句

RewriteRule /new_([0-9,a-z]*).html /new.asp?id={GetProperty(Content)}

保存後,我們就可以測試一下這個網址了:http://127.0.0.1/new_1234.html

可以看到頁面上的"1234"了吧,就這樣偽靜態配置成功了!

⑦ ThinkPHP怎麼實現偽靜態

1、實現偽靜態方法:
1)隱藏入口文件:http://doc.thinkphp.cn/manual/hidden_index.html
2)結合使用URL路由:http://doc.thinkphp.cn/manual/url_route.html
3)配置偽靜態後綴名:HTML_FILE_SUFFIX => '';
上面三個都用上,基本都OK了!當然,還可以通過伺服器重寫URL
2、設置讓地址欄不能訪問文件夾
1)每個文件夾添加一個index.html空文件(因伺服器默認的首頁而異同),假如默認首頁是 index.html 那就 添加index.html
2)也可以通過伺服器配置目錄訪問許可權

⑧ 網站優化之PHPCMS如何開啟偽靜態

在安裝完最新版的PHPCMS V9版後,默認是不啟用偽靜態的,你需要經過一些設置才能實現。

.htaccess文件
首先第一點,你需要在網站根目錄下放置一個「.htaccess」文件,來標明其「Rewrite」規則。這個文件實際在最新版的V9版的readme目錄下有,默認跟上傳目錄分開的,剛才說了,PHPCMS默認是不開啟偽靜態的。所以,你只需要將其上傳到你的根目錄即可。當然你也可以自己編寫,其內容如下:

RewriteEngineon
RewriteRule^content-([0-9]+)-([0-9]+)-([0-9]+).htmlindex.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3
RewriteRule^show-([0-9]+)-([0-9]+)-([0-9]+).htmlindex.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3
RewriteRule^list-([0-9]+)-([0-9]+).htmlindex.php?m=content&c=index&a=lists&catid=$1&page=$2

欄目管理設置不生成Html
第二步,你需要在你的後台欄目管理裡面,對你的各個欄目設置為不生成Html,默認是生成的,請注意。


同時,你還需要選擇欄目頁和內容頁的URL規則如上圖所示的規則類型。

一切設置完畢後,更新你的緩存,就完工了!

閱讀全文

與phphtaccess偽靜態相關的資料

熱點內容
linux開機啟動配置 瀏覽:367
androidstudio類注釋 瀏覽:135
如何在pdf中插入圖片 瀏覽:907
京山pdf 瀏覽:28
怎麼解除微信授權的app 瀏覽:168
dcs用什麼編程 瀏覽:326
黑馬程序員專輯獲取 瀏覽:873
加密技術的關鍵密鑰其好處有哪些 瀏覽:977
方言pdf 瀏覽:997
程序員格子襯衣搞笑圖 瀏覽:390
vxworks編譯版本 瀏覽:111
怎麼查看讀取相冊的app 瀏覽:206
那個空調用日立壓縮機 瀏覽:816
androidsdkr25下載 瀏覽:12
哪位程序員的名字是誰 瀏覽:568
蘋果手機底部怎麼放5個app 瀏覽:915
壓縮機出涼風 瀏覽:823
不能從文件夾看到迅雷 瀏覽:139
編程處理表格有意義嗎 瀏覽:438
java字元串回車換行 瀏覽:155