Apache:如何利用.htaccess文件對PHP網站或文件進行偽靜態處理


來源:http://www.ido321.com/1123.html

今天get了一招:利用.htaccess文件對PHP網站或文件進行偽靜態處理。

一、檢查服務器是否支持偽靜態處理:

必 須要空間支持 Rewrite 以及對站點目錄中有 .htaccess 的文件解析,才有效.找到apache安裝目錄下的httpd.cof文件,去掉LoadModule rewrite_module modules/mod_rewrite.so前面的#(大概在154行,我的默認是開啟)

二、在httpd.cof中查找以下部分:

<Directory />
   Options FollowSymLinks
   AllowOverride None
</Directory>

 

改為:

<Directory />
   Options FollowSymLinks
   AllowOverride All
</Directory>

 

如果沒有,手動添加。(PS:LZ試過,在最近的新版本的Apache上即使沒有這個,.htaccess照樣生效。但是不同服務器及版本的原因,建議加上

三、重啟apache服務器,添加.htaccess文件

建立.htaccess文件的方式:

1、保存文件的時候將文檔保存成名為“***.txt”,再將其上傳到服務器上,之后直接使用FTP軟件來重命名為“.htaccess”。(適合windows)

2、保存文件的時候選擇文件—>另存為,保存類型選所有文件,然后文件名輸入.htaccess 。(適合windows)

3、直接在你的Unix或Linux虛擬主機上建立。

4、先用記事本編寫好,隨便保存為一個什么文件名,然后打開“命令提示符”(CMD),然后再用重命名命令(rename),例如:rename c:\htaccess.txt  .htaccess

請注意: .htaccess必須,保存為ANSI 格式,以ASCII模式上傳,最好將其權限設置為644。

     一般我們將.htaccess文件放置在網站的根目錄,控制所在目錄及所有子目錄,當然也可以放在網站的任何一個子目錄下,但如果放置在子目錄中,子目錄中的指令會覆蓋更高級目錄或者主服務器配置文件中的指令。

在博客收錄集(http://www.ido321.com/1112.html)為例,本地.htaccess文件如下:

#rewriteengine為重寫引擎開關on為開啟off為關閉
RewriteEngine On 
RewriteRule ^index\.html$ index.php
RewriteRule ^webmore\.html$ webmore.php
   以index.html代替index.php    webmore.html代替webmore.php。
   .htaccess支持正則表達式,例如:

  原始 news/detail.php?id=2  偽靜態  news/detail_2.html

RewriteRule ^news/detail_([0-9]{1,})\.html$ news/detail.php?id=$1

 

下一篇:雜談:HTML 5頁面可視性API


免責聲明!

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



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