1

読んでくれてありがとう。私は検索を行い、複数の投稿を読み(カウントを失いました)、まだ単純に見える何かに問題があります。私はリダイレクトまたはリライトしようとしています:

http://www.mysite.com/blog/

http://www.blog.mysite.com/

まず、これをルート ディレクトリまたはブログ サブディレクトリの htaccess ファイルに入れる必要がありますか? 次に、私の試みのいくつかを以下に示します。

(試行 1)

RewriteCond %{HTTP_HOST} ^mysite\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.mysite\.com$
RewriteRule ^blog\/?$ "http\:\/\/www\.blog\.mysite\.com\/" [R=301,L]

(試行 2)

RewriteCond %{HTTP_HOST} ^(www\.)?blog\.mysite\.com$
RewriteCond %{REQUEST_URI} mysite.com/blog
RewriteRule ^(.*)$ /blog/$1 [L]

(試行 3)

RewriteRule http://mysite.com/blog http://www.blog.mysite.com/$1 [R=301,L]

(試行 4)

rewriterule ^blog/(.*)$ http://www.blog.mysite.com/$1 [r=301,nc]

どんな助けでも大歓迎です。

4

2 に答える 2

1

最初の試行はほぼ正しいようです。条件を削除してOR両方を 1 つの正規表現にパックし、エスケープされたスラッシュと引用符を書き換えターゲットからすべて削除します。

# Also, are you missing RewriteEngine On?
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?mysite\.com$ [NC]
# Redirect and place everything after /blog onto /
RewriteRule ^blog(.*)$ http://www.blog.mysite.com$1 [R=301,L]

これは、ルート ディレクトリの .htaccess に配置する必要があります。

于 2012-06-22T19:41:52.380 に答える
0

簡単なコードでこれを行うことができます。使用する

Redirect /blog http://blog.mysite.com/
于 2015-12-28T11:43:33.447 に答える