幾天前我的webhoster更新了apache。此後出現錯誤代碼500。 現在的問題是,根據htaccess語法,apache似乎更嚴格。 錯誤已修復,但我的重定向無法正常工作。我的htaccess中的RegEx無法正常工作
我的htaccess的內容:
RewriteEngine on
RewriteBase/
RewriteCond %{http_host} ^(www\.)?domain\.de$ [NC]
RewriteRule ^(.*)$ http://www.domain.de/DE/ [L,R=301]
描寫的特徵: 我想www.domain.de和domain.de重定向到http://www.domain.de/DE/。
問題:
(www\.)
隨着這部分重定向不工作的。如果我刪除它,它只適用於domain.de而不是www.domain.de。
我在我的htacces中犯了什麼錯誤嗎?我無法找到任何。我搜索了很多,並多次發現這個解決方案。直到現在,我在這個問題上花了很多時間,但我沒有取得任何進展。
您可以選擇使用兩個條件來代替:'RewriteCond%{http_host}^domain \ .de $ [NC,OR]''RewriteCond%{http_host}^www \ .domain \ .de $ [NC]'(請注意OR標誌) – Gerben
您不應該將條件拆分出來 - 使用正則表達式就足夠簡單了。如果我們知道「根本不起作用」是什麼意思 - 它是不是重定向?它會拋出一個錯誤嗎?代碼的使用與所顯示的完全相同(除了真實域名)? – IBBoard