2016-04-17 28 views
1

静的IP以外のメンテナンスページに全員をリダイレクトしようとしています。私のサイトのディレクトリには、私はxxはApache 2.4リダイレクトループ

RewriteEngine On 
RewriteBase/
RewriteCond %{REMOTE_HOST} !^xx.xxx.xxx.xx 
RewriteRule .* /maintenance.html [R=302,L] 

私のIPであることで.htaccessファイルを持っているが、私は、私は私のサイトの仮想ホストで

ERR_TOO_MANY_REDIRECTS 

を取得し、別の場所から訪れたとき、私は

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    ServerName something.com 
    ServerAlias www.something.com 
    DocumentRoot /var/www/something.com/public_html/ 
    ErrorLog /var/www/something.com/logs/error.log 
    CustomLog /var/www/something.com/logs/access.log combined 
    <Directory /var/www/something.com/public_html/> 
     Require all granted 
     AllowOverride All 
    </Directory> 
</VirtualHost> 
を持っています

リダイレクトループを停止する方法はありますか?

答えて

1

はい、無条件でmaintenance.htmlにリダイレクトするので、リダイレクトループです。あなたの要求が既にmaintenance.htmlであればリダイレクトしないことを意味し

RewriteEngine On 

RewriteCond %{REMOTE_HOST} !^xx.xxx.xxx.xx 
RewriteRule !^maintenance\.html$ /maintenance.html [R=302,L,NC] 

はリダイレクトループの使用を防ぐために。

関連する問題