熱烈祝賀臺州維博網絡的站長論壇隆重上線!(2012-05-28)    熱烈慶祝偉大的祖國60周年生日 點擊進來我們一起為她祝福吧(2009-09-26)    站長論壇禁止發布廣告,一經發現立即刪除。謝謝各位合作!.(2009-08-08)    熱烈祝賀臺州網址導航全面升級,全新版本上線!希望各位一如既往地支持臺州網址導航的發展.(2009-03-28)    臺州站長論壇恭祝各位新年快樂,牛年行大運!(2009-01-24)    臺州Link正式更名為臺州網址導航,專業做以臺州網址為主的網址導航!(2008-05-23)    熱烈祝賀臺州Link資訊改名為中國站長資訊!希望在以后日子里得到大家的大力支持和幫助!(2008-04-10)    熱烈祝賀臺州Link論壇改名為臺州站長論壇!希望大家繼續支持和鼓勵!(2008-04-10)    臺州站長論壇原[社會瑣碎]版塊更名為[生活百科]版塊!(2007-09-05)    特此通知:新臺州站長論壇的數據信息全部升級成功!">特此通知:新臺州站長論壇的數據信息全部升級成功!(2007-09-01)    臺州站長論壇對未通過驗證的會員進行合理的清除,請您諒解(2007-08-30)    臺州網址導航|上網導航誠邀世界各地的網站友情鏈接和友誼聯盟,共同引領網站導航、前進!(2007-08-30)    禁止發廣告之類的帖,已發現立即刪除!(2007-08-30)    希望各位上傳與下載有用資源和最新信息(2007-08-30)    熱烈祝賀臺州站長論壇全面升級成功,全新上線!(2007-08-30)    
便民網址導航,輕松網上沖浪。
臺州維博網絡專業開發網站門戶平臺系統
您當前的位置: 首頁 » AMPZ/Nginx/IIS發布安裝 » 在XP操作系統下Apache Mod_Rewrite實現URL重寫的配置方法

在XP操作系統下Apache Mod_Rewrite實現URL重寫的配置方法

論壇鏈接
  • 在XP操作系統下Apache Mod_Rewrite實現URL重寫的配置方法
  • 發布時間:2011-07-29 14:46:04    瀏覽數:5947    發布者:tznktg    設置字體【   
前段時間朋友的網站由于在做SEO URL的規劃,需要利用Apache的Mod_Rewrite對URL進行重寫,實現網站偽靜態化。在拿到他們提供的URL規劃方案后,我做了測試,大家可以看一下。

  測試環境:

  Windows xp

  PHP4.3

  Apache2.0.58

  配置步驟:

  第一步:找到apache的配置文件httpd.conf(文件在conf目錄下)

  第二步:你首先必須得讓服務器支持mod_rewrite,如果你使用的是虛擬主機,請事先詢問你的主機提供商。

  打開httpd.conf,找到

  #LoadModule rewrite_module modules/mod_rewrite.so

  把#去掉

  找到AllowOverride None 改成 AllowOverride All,

  注:AllowOverride 的參數設置為ALL,表示整臺服務器上都支持URL規則重寫。Apache 服務器要讀每個網站下目錄下的 .htaccess 文件。如果沒有這個文件,或者這個文檔沒有定義任何關于URL重寫的規則就不會有任何效果。

  對于不同的網址,需要在APACHE中增加如下內容

  <Directory “E:/Apache Group/Apache2/htdocs/leapsoul”>

  /*引號里代表你的web存放目錄*/

  /*如果是Linux,只要你定位到你網站目錄即可*/
   Options FollowSymLinks
   AllowOverride None

  </Directory>

  第三步:重啟apache服務器,先按stop再start。

  第四步:在你需要URL重寫的網站目錄下放一個.htaccess文件,文件名是.htaccess,Windiws下不能直接建立,你可以用記事本另存為。

  注:我測試的時候在每個需要偽靜態的目錄下都存放了對應的.htaccess文件,同時在httpd.conf文件中像第二步那樣對相關的目錄添加了相應的<Directory>..</Directory>代碼。

  第五步:在.htaccess中通過正則表達式映射需要偽靜態的頁面。

  URL正則表達式如下:

  RewriteEngine on
  RewriteRule index.html index.php
  RewriteRule (\d+).html$ info\.php\?infoid=$1

  注:URL規劃的方案例子:

  www.leapsoul.cn/info/info.php?infoid=100

  映射為

  www.leapsoul.cn/info/100.html

  配置結束。

  在Linux下基本上沒啥變動,我只修改了相關目錄地址,運行正常。

  以上就是我關于利用Apache的mod_rewrite對URL重寫的具體操作步驟,從而實現了網站URL偽靜態化。有需要的朋友可以參考,有更好實現辦法的也可以給我留言。
      4、開啟支持rewrite module

#LoadModule rewrite_module modules/mod_rewrite.so

去前面掉#,修改為


LoadModule rewrite_module modules/mod_rewrite.so

<Directory />
Options FollowSymLinks
AllowOverride None # 修改為AllowOverride All #
Order deny,allow
Deny from all
Satisfy all
</Directory>


<Directory "d:/wamp/www/">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
Options Indexes FollowSymLinks
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride None # 修改為AllowOverride All #
#
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all
</Directory>
      我們知道,搜索引擎是偏愛靜態頁面的,因此,把諸如:http://www.jianglb.com/?p=123的頁面改成http://www.jianglb.com/apaeche-rewrite.html顯然有利于被搜索.

但是,如果一般的直接用http://www.jianglb.com/apaeche-rewrite.html而又不存在這地址的文件,就肯定會報錯文件不存在.

這就要使用到Apache的rewrite模塊,把這些URL重定向某個動態程序如index.php,當然,index.php也需要有相應的程序識別這些地址,以從數據庫存取數據.

啟用rewrite,要確認apache配置文件:httpd.conf中有
LoadModule rewrite_module libexec/mod_rewrite.so

網站所在的目錄定義了下面的內
容:
Options Indexes FollowSymLinks
AllowOverride all

網站所在目錄還必須包括一個.htaccess
內容為:
rewriteengine on
rewritebase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

如此則URL請求自動發送到index.php了



我寫了個正值表達試是這樣的
RewriteRule ^/*(.*?)/r_(.*?)-(.*?)-(.*?)-(.*?)-(.*?)\.html $1/$2.php?type1=$3&type2=$4&type3=$5&page=$6
偽靜態格式必須為r_xxx-變量1-變量2-變量3-變量4.html
有什么正值表達式如果有一個變量就r_xxx-變量1.html
二個變量就r_xxx-變量1-變量2.html
三個變量就r_xxx-變量1-變量2-變量3.html
娛樂休閑專區A 影視預告B 音樂咖啡C 英語階梯D 生活百科
網頁編程專區E AMPZF HTMLG CSSH JSI ASPJ PHPK JSPL MySQLM AJAX
Linux技術區 N 系統管理O 服務器架設P 網絡/硬件Q 編程序開發R 內核/嵌入
管理中心專區S 發布網址T 版主議事U 事務處理
陕西快乐10分玩法 体彩辽宁十一选五开奖结果 河南十一选五基本走势图 三分彩是正规的吗 吉林11选5一定牛网 时时彩软件黄金版 中国最好的股票分析网站 广西体育彩票十一选五 广快乐双彩 时时彩软件免费版 赤盈配资