2013-04-06 55 views
5

我有大約300重定向的格式如下不區分大小寫htaccess的301

Redirect 301 /post/My-Blog-Post.aspx https://www.example.com/blog/a-new-post/

,除了重定向是大小寫敏感的,要/post/my-blog-post.aspx不重定向的偉大工程。

舊網址到新網址沒有模式,因此這可能必須是每個重定向的標誌。

無論大小寫怎樣才能得到URL重定向?

+1

爲什麼會這樣關閉的話題? – developdaly 2013-04-07 17:48:29

+0

因爲* .htaccess *主題沒有任何REGEX是一個脫離主題,屬於:http://serverfault.com – 5ervant 2013-04-30 05:33:13

回答

7

不要認爲有辦法使Redirect指令(mod_alias的一部分)不區分大小寫,但有一個可以使用的mod_rewrite標誌。你需要所有的重定向更改此:

Redirect 301 /post/My-Blog-Post.aspx https://www.example.com/blog/a-new-post/ 

到:

RewriteRule ^/?post/My-Blog-Post.aspx$ https://www.example.com/blog/a-new-post/ [L,R=301,NC] 

注意NC標誌,意爲 「任何情況下」。這將匹配任何類似於/post/my-blog-post.aspx的URI並忽略大小寫,並將其重定向到https://www.example.com/blog/a-new-post/

+0

沒有骰子 - 相同的結果。 – developdaly 2013-04-12 13:37:11

+0

添加NC標誌爲我工作在幾個不同的站點上,一臺服務器運行Apache 2.2,另一臺運行在2.4上。檢查Apache的文檔,它與Jon Lin的回答一致:https://httpd.apache.org/docs/current/rewrite/flags.html#flag_nc – staypuftman 2013-11-14 16:32:34

1

但是,如果你想使「我 - 博客郵報」「A-新崗位」一個變量,如果你願意,我的意思是/post/My-Blog-Post.aspx被重定向到/博客/ A-新崗位/要麼/後/ 的.aspx/博客/ //後/ 的.aspx/博客/ /甚至/後/ 什麼的.aspx/博客/ 什麼/,你可以嘗試在您使用此代碼.htaccess隱藏文件:

Options +FollowSymlinks 
RewriteEngine on 

RewriteRule ^post/([a-z0-9-_]+).aspx$ /blog/$1/ [R=301,NC]