php偽靜態配置

2022-07-20 10:27:07 字數 2234 閱讀 5316

配置虛擬主機和偽靜態

1.開啟apache的rewrite模組

loadmodule rewrite_module modules/mod_rewrite.so

2.開啟虛擬主機功能

3.修改conf/extra/httpd-vhosts.conf檔案

documentroot "f:/wamp/www/teacher"   指定訪問目錄

servername www.baidu.com                   指定允許訪問的網域名稱

對這個目錄進行設定

deny from all   禁止任何人訪問,不寫可以訪問,是因為如果此目錄沒做設定,會繼承他的上級目錄來許可權;如果上級目錄禁止訪問,可以再此目錄中寫allow from all則這個目錄就可以訪問,不會繼承父目錄的許可權

options none  不允許伺服器顯示目錄中的檔案列表,允許就改成options indexes

directoryindex  abc.html  123.html 配置目錄指定首頁面,預設是index,指定後先選擇abc.html,如果沒有再顯示123.html

errordocument  404  /404.html  指定發生錯誤後顯示的頁面,errordocument後跟http狀態碼,當遇到這種狀態嗎,就會執行後面指定的頁面

allowoverride all  允許到對應目錄的.htaccess檔案中 讀取規則

下面配置rewrite規則

rewriteengine on  開啟重新功能(一定要檢測是否啟用mod_rewrite.so模組)

rewriterule   a.html  b.php  當訪問a.html頁面時,其實是訪問b.php

rewriterule   news/id/(\d+).html   news.php?id=$1   為了廣泛的使用,可以使用正則來匹配news/id/100.html這種都執向news.php,接收的引數就是前面匹配的數值

4.htaccess檔案的寫法

在沒有許可權修改httpd-vhosts.conf檔案的情況系下,可以使用.htaccess檔案來做目錄許可權,如果.htaccess用不了,就看看httpd-vhosts.conf檔案是否開啟了allowoverride all

#如果載入了rewrite_module模組

這些規則和 httpd-vhosts.conf檔案中的規則寫法一樣

rewriteengine on

rewriterule   news/id/(\d+).html   news.php?id=$1  

可以寫多條規則

5.做防盜煉

6.在c:\windows\system32\drivers\etc的host檔案中新增網域名稱指向到本地127.0.0.1       www.xuni.com

注意:在配置好後,開啟localhost發現提示403錯誤,是因為開啟了虛擬主機功能(第二步),在httpd-vhosts.conf檔案中

預設新增了幾條規則,因為用的是wamp環境,裡面的documentroot不是wamp指定的根目錄,導致localhost定位到的目錄不對,這就

是導致localhost不能訪問403的原因,只要把預設的規則修改下

serveradmin [email protected]

documentroot "f:/wamp/www"            #訪問的根目錄

servername localhost                          #允許訪問的網域名稱

errorlog "logs/dummy-host2.example.com-error.log"

customlog "logs/dummy-host2.example.com-access.log" common

然後在後面新增自己需要的規則

php中配置偽靜態

mod rewrite是apache的乙個非常強大的功能,它可以實現偽靜態頁面。下面我詳細說說它的使用方法 1.檢測apache是否支援mod rewrite 通過php提供的phpinfo 函式檢視環境配置,通過ctrl f查詢到 loaded modules 其中列出了所有apache2hand...

PHP 偽靜態技術

下面是生成偽靜態位址和逆轉偽靜態位址的兩個函式,這兩個函式在相應的位置引用就可以實現將轉成這樣的形式。使用參考 將此ion list page 2 位址生成 action list page 2.htm形式 url ion list page 2 urlstr makeurlhtml url ech...

PHP偽靜態步驟

header content type text html charset utf 8 dsn mysql host localhost dbname seven db new pdo dsn,root db exec set names utf8 分頁 count 11 page size 3 總...