2012-10-17 129 views
1

這似乎正是你想要做的與htaccess重寫規則。但我似乎無法讓它正常工作。循環htaccess重寫規則

我有我的網站上此頁:http://wireie.gocactus.com/network_extensions.php

我想將它重命名爲:http://wireie.gocactus.com/transparent-ethernet-solutions

所以這是我把我的htaccess文件行:

RewriteRule ^transparent-ethernet-solutions network_extensions\.php [NC] 

Alrighty。現在,如果我去/transparent-ethernet-solutions,它效果很好。

問題是,/network_extensions.php也仍然很好。所以我想重寫URL以這條線:

RewriteRule ^network_extensions\.php*$ /transparent-ethernet-solutions [R,NC] 

現在,它給了我約了過多的重定向錯誤消息。如果我在沒有第一行的情況下添加第二行,它會更改PHP鏈接上的URL,但會在漂亮的鏈接重定向中給我一個「未找到頁面」錯誤。

我的思想爆炸了。我可以在不轉發網址的情況下重寫網址,並讓新網址在沒有重定向的情況下運行嗎?我不確定是否在第一行中缺少一些參數,或者需要某些規則組合。

回答

1

這是將在你的.htaccess需要的代碼:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteRule ^transparent-ethernet-solutions/?$ network_extensions.php [NC,L] 

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+network_extensions\.php\s [NC] 
RewriteRule^transparent-ethernet-solutions [R=301,L] 
+0

謝謝你,謝謝你,謝謝你。有條件的規則絕對有意義。我在玩條件,但沒有%{THE_REQUEST}語法來匹配URL。你是一個大腦保護者! :) – MauMichael

+0

非常歡迎您,很高興爲您提供幫助。 – anubhava