2011-08-17 9 views
1

をリダイレクトする私は、次のURL書き換えを持っている:htaccessファイルのURLは、301の後に動作していないリライト

RewriteRule ^info/([^/\.]+)/?$ info.php?page=info&subpage=$1 [L] 

は、もともとのパラメータは、ページIDのすなわち0-10ました。 URLを変更して、内容を反映するためにURLに意味のあるスラッグ名を付けるようにしました。

私は今、例えば、301のリダイレクトを設定している:

Redirect 301 /info/0 http://www.example.com/info/intro 

しかし、問題は、リダイレクトは、URL書き換え(http://www.example.com/infoに行っていない、あります/イントロ)。代わりに完全なURLを表示します(http://www.example.com/info.php?page=info &サブページ= 0)

書き換えを維持するにはどうすれば入手できますか?
多くのおかげ

+0

1)は、ルールの順序が重要 - あなたの完全htaccessを(少なくとも、すべてのルールの部分)をご提示ください。少なくともリダイレクトルールを書き換えルールに置き換えてください。 2)リダイレクトをReweriteRuleフォームに変換してください(これは最後に同じジョブを実行します)。既存のリライトルールの前に置きます。 – LazyOne

+0

ありがとうLazyOne。リダイレクトは書き換えルールの前にあります。私はそれをRewriteRuleに変換する方法がわかりません - 私はこのすべてに新しいです:(私はhtaccessコードを投稿します...ちょっと下にそれをトリムする必要があります。 – iltdev

+1

これと同じくらい簡単です: 'RewriteRule^info/0 $ http://www.example.com/info/intro [R = 301、L] ' – LazyOne

答えて

0

LazyOneによって掲示として、ソリューションをするRewriteRuleを使用することでした:

RewriteRule ^info/0$ http://www.example.com/info/intro [R=301,L] 
関連する問題