2016-05-05 9 views
0

(7 Drupalの)
RewriteCond %{REQUEST_URI} ^/mobile/blog/
RewriteRule ^mobile/blog/(.*)$ /blog/$1 [R=301,L]コンバートnginxのApacheを.htaccessファイルにリダイレクト私は.htaccessの中のURLをリダイレクトする必要が

成功なし。
また、.htaccessにある必要があるこれらのnginxリダイレクトもあります。

rewrite ^/items/(.+)/(.*) /search/$2 permanent;

rewrite ^/topic/onlyon $scheme://$host/tags/onlyon permanent;

すべてのヘルプやドキュメントが理解されます。

+0

Redirect permanent /oldlocation /newlocation 

はこのようなものを使用することができますを書き換え使用してディレクトリ内のすべてを移動するにはなぜあなたはnginxからApacheに切り替えるでしょうか? – cnst

+0

私の給与等級を上回っています。 – mamesaye

答えて

1

Drupalは.htaccessファイルを更新することがあり、Drupalは内部的にリダイレクトを維持することが多いため、Redirect moduleを使用してリダイレクトを処理することがよくあります。

つまり、.htaccessでリダイレクトを行う必要がある場合やそうしたい場合は、それをうまくやることができます。あなたが書き換えなしで行うことができます最初のリダイレクトは、あなたがApache's redirect directiveを使用することができます。

RewriteRule ^items(/.*)?$ /search/$1 

も参照してください:Apache rewrite rule for whole directory

+0

ありがとうございます。 Apacheのリダイレクトが機能します。しかし、私が理解できないのは、書き換えルールが機能しないということです。それはDrupalは本当にフォルダがなく、ノードを持っているからですか? (私はDrupalに新しくなったかもしれません) – mamesaye

+1

.htaccess指令がDrupalの実行前に実行されるため、Drupalの構造化方法は、ファイル/ノードが存在するかどうかを確認する必要がある場合にのみ重要です。ファイルがあるか、リダイレクトモジュールまたはリダイレクトモジュールにリダイレクトされています)。書き換えに失敗した理由1:mod_rewriteがサーバ上で実行されていません。理由#2書き換え一致パターンが間違っています。 – acrosman

関連する問題