1

内部の問題と別の部分からの拒否により、指定されたドメインからのすべてのアクセスをリダイレクトする方法が必要です。これまでのところ、次のことを思いつきました。

RewriteCond %{HTTP_HOST} ^bad-domain.com [NC]
RewriteRule ^(.*)$ http://mydomain.com/bad-request.html

これは機能しません。注目に値するのは、私は書き直しが苦手ですが、学ぼうとしていることです。私はこれを PHP でうまく実装しましたが、それにはすべてのプロジェクトにコードが必要であり、実際にはそうではありません。

私を正しい方向に導くすべての提案、ヒント、および回答を高く評価しています。

4

2 に答える 2

2

これが機能しない理由がわかりません。次の点をもう一度確認してください。

RewriteCond %{HTTP_HOST} ^bad-domain.com [NC,L]
RewriteRule ^(.*)$ http://mydomain.com/bad-request.html

アレクサンダー・ストーバーが指摘したように:

RewriteEngine on

次に、これらのルールをサーバー構成に入れる場合は、デーモンを再起動する必要があります。だからおそらく何かのような

/etc/init.d/apache2 restart

デーモンが何かについて文句を言う場合は、エラー ログファイルを確認してください。次のようになります。

/var/log/apache2/error_log

またはログを書き込む場所。

これらのルールを「.htaccess」ファイルに入れる場合 (なぜですか?)、サーバーが実際にそれらのファイルを使用するように構成されていること、およびファイル パスのオーバーライドを許可していることを確認してください。

AllowOverride:  FileInfo

ロギングを使用して書き換えをデバッグします。これには、mod_rewrite によって提供される 2 つのオプションがあります。

RewriteLog
RewriteLogLevel
于 2012-08-01T16:01:16.630 に答える