0

これは、これらの線に沿ったほとんどの質問の逆であるように思われます。

これはhtaccessファイルにあります。

サイトのルートに対するすべてのリクエストをリダイレクトし、他のすべてのリクエストを通常どおり処理したいと思います。したがって、mysite.tld(またはmysite.tld/index.xxxx)のリクエストはに送信され、(または)myothersite.tldのリクエストは通常​​どおり処理されます。mysite.tld/dirmysite.tld/file.xxxx

可能であれば、カスタムエラーページも提供したいと思います。私はいくつかのアプローチを試しました:

#This one wouldn't trap 404s anyway.
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ http://myothersite.tld [L,R=301]

そしてこれ:

 RewriteCond %{HTTP_HOST} ^mysite.tld
 RewriteRule ^(.*)$ http://myothersite.tld [L,R=301]

しかし、これらは私が望むことをしていません。

ありがとう!

グレッグ

4

1 に答える 1

1

ちょうどどうですか:

RewriteCond %{HTTP_HOST} ^mysite.tld
RewriteRule ^$ http://myothersite.tld [L,R=301]

RewriteCond %{HTTP_HOST} ^mysite.tld
RewriteRule ^index\.(html|php|htm)$ http://myothersite.tld [L,R=301]

これがサーバーまたは仮想ホストの構成にある場合は、正規表現を変更して先頭にスラッシュを含めます: ^/$, ^/index.

于 2012-07-26T23:09:32.127 に答える