您好,登錄后才能下訂單哦!
.htaccess文件的內容如下:
RewriteCond %{HTTP_HOST} ask.xxoo.com
RewriteRule ^(index.html)?$ /ask/
RewriteRule ^(.*)list-([0-9]+)-([a-z]+)\.html$ $1/ask/list.php?catid=$2&action=$3
RewriteRule ^(.*)show-([0-9]+)\.html$ $1/ask/show.php?id=$2
分析代碼:
RewriteCond 后面的 %{HTTP_HOST} 是域名
RewriteCond %{HTTP_HOST} space.xxoo.com 表示地址欄中的域名是否等于space.xxoo.com這里也可以使用正則 如:RewriteCond %{HTTP_HOST} space([1-9]).xxoo.com 這匹配的url包含了space1.xxoo.com space2.xxoo.com space2.xxoo.com .......space9.xxoo.com 這9個域名
RewriteRule ^(index.html)?$ /ask/
匹配的是網站但域名ask.xxoo.com或ask.xxoo.com/index.html這兩個地址: 重定向的是ask.xxoo.com/ask
RewriteRule ^(.*)list-([0-9]+)-([a-z]+)\.html$ $1/ask/list.php?catid=$2&action=$3
匹配地址包含
ask.xxoo.com/list-3-all.html 重定向的是ask.xxoo.com/ask/list.php?catid=3&action=all
ask.xxoo.com/list-45-high.html 重定向的是ask.xxoo.com/ask/list.php?catid=45&action=hight
RewriteRule ^(.*)show-([0-9]+)\.html$ $1/ask/show.php?id=$2
匹配地址包含
ask.xxoo.com/show-3.html 重定向的是ask.xxoo.com/ask/show.php?id=3
ask.xxoo.com/show-21.html 重定向的是ask.xxoo.com/ask/show.php?id=21
。。。。。
自己現在服務器在用的 ISAPI_Rewrite 3.x.x
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^index.html$ / [NC,L,R=301,O]
</IfModule>
匹配的意義:把根目錄下面的index.html 默認跳轉到不帶index.html 防止index.html分散權重
說明:O表示對URL進行標準化,L表示Last Rule,最后一條規則,也就是后面的重寫規則對他不起作用,防止被其他匹配的規則再次重寫。這里的路徑可以是相對路徑也可以是絕對路徑。
說明:[I,RP]:I表示忽略大小寫,RP表示使用301轉向,以上都是整個域名重定向。
.htaccess的301重定向代碼
把不帶www的域名301到帶www的域名
RewriteEngine On
RewriteCond %{http_host} ^example.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
“RewriteEngine On”,開啟 Rewrite 規則開關;
“RewriteCond”指重寫的條件。后面的字符串通過正則表達式進行匹配,匹配字符串以 ^ 開頭并以 $ 結尾。此處 %{http_host} 獲取當前主機名稱。條件為“當主機名稱為example.com”時執行下列的重寫規則。其中“[NC]”指不區分大小寫;
“RewriteRule”,定義一條重寫規則。此處含義:跳轉到“http://www.example.com/”接上訪問請求的網址中 example.com 后面的部分。[R=301] 指重寫為 301 重定向/跳轉([R] 單指跳轉,意義等同 [R=302]),[L] 指最后一條匹配規則。
把老域名301到新域名
更換域名時,老域名的權重不能浪費了,把老域名的頂級域名和帶www的域名都要301到新域名,代碼如下
RewriteEngine On
RewriteCond %{http_host} ^(www.)?old.com$ [NC,OR]
RewriteCond %{http_host} ^new.com$ [NC]
RewriteRule ^(.*)$ http://www.new.com/$1 [R=301,L]
現在無論你訪問old.com,www.old.com,new.com都會301到www.new.com 夠完美了吧!而且所有的內頁也會跟著301,接下來至少等待2個月,期間不要刪除原域名,靜等權重完全轉移!
需要注意的是,wordpress默認情況下不支持該條命令,因為wordpress的網址本身就是偽靜態的,要想實現這個功能,必須先把wordpress的內頁生成html文件。
==重要提醒==:IIS 6中的.htaccess 301定向
以下規則適用于 IIS 6中的 ISAPI_Rewrite 2.x 3.x 中的httpd.ini或.htaccess
注意這兒的.htaccess不是apache中的.htaccess 規則略有不同。
RewriteCond %{HTTP:Host} ^sjyhome.com$
RewriteRule (.*) http://www.sjyhome.com/$1 [NC,R=301]
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。