2016-10-09 5 views
2

私は次のようにリダイレクトを行う必要があります。あるURLグループから別のURLグループにリダイレクトする方法は?

から: site.ru/blog/article_slug へ: site.ru/news/article_slug

私はそれを使用しようとしましたが、それは正常に動作しない(404エラーページを表示する):

RewriteCond %{REQUEST_URI} ^(.*)(\/blog\/)(\S+)$ 
RewriteRule /news\/%3 [R=301,L] 

のフルのhtaccessファイル(mod_rewriteの一部):

RewriteEngine on 

RedirectMatch 403 /\..*$ 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

RewriteRule . index.php 
+0

使用したルールからどのような動作が得られ、どのような動作が期待どおりであるか説明してください。 「うまく動作しない」とは、具体的ではありません。 – YakovL

+0

404エラーページ –

答えて

0

これをHTMLまたはJavascriptで行うことを検討しましたか? HTMLの場合は、メタタグ(<meta http-equid="refresh" content="0"; URL ='http://site.ru/news/article_slug.com />)をsite.ru/blog/article_slugの頭に含めてください。あなたもこれを行うにはJavascriptを使用することができますwindow.location = "http://site.ru/news/article_slug.com"

+0

が表示されます。使用できません。 mod_rewriteを使用してhtaccessによって作成される必要があります。あなたのバリアントは静的なサイトで使用できます。私はあなたに誤解されているかもしれません... –

0

RewriteBaseオン

RewriteEngine on 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^blog/(.*)$ news/$1 [R=301,L] 

、このルールを試してみて、それは根がルール上記のようにそれを残している場合は、ルールを適用している実際のディレクトリを入れてください。

+0

私はあなたの提案を試みましたが、今では私をリダイレクトしています:site.com/var/www/html/public/news/Skype-for-Business。完全なファイルシステムパスをペーストします –

+0

編集をお試しください! –

+0

私はすでにあなたが提供した構成を持っています。上の問題のボディでは、完全な.htaccessを投稿しました。だから私はあなたの建築物をどこに書くべきでしょうか? –

関連する問題