为什么这个.htaccess重定向不起作用?

时间:2017-01-26 21:29:16

标签: .htaccess redirect amazon-ec2 http-redirect

我有两个相同版本的网站,都使用不同的AWS EC2实例(登台xx.xx.xx.xx和生产xxx.xxx.xxx.xxx)。我想创建一个301重定向,将所有用户从登台站点重定向到生产站点,除非他们从我的IP访问。我认为这是一个相对简单的任务,但我试图在过去几个小时内完成这项工作而没有解决方案。我希望有人能指出我正确的方向。目前,重定向适用于主页http://xx.xx.xx.xx的访问者,但它不适用于其他网页,例如http://xx.xx.xx.xx/page1或ec2公共DNS,例如http://ec2-xx-xx-xx-xx.us-west-1.compute.amazonaws.com/这是我的整个.htaccess文件,我添加的重定向是最后一个。你能给我的任何帮助都会非常感激!!

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

php_value upload_max_filesize 64M
php_value post_max_size 64M
php_value max_execution_time 300
php_value max_input_time 300

# END WordPress

RewriteEngine on
RewriteRule ^(.*)$ http://newsite.com/$1 [L,R=301,NC]
RewriteBase /
RewriteCond %{HTTP_HOST} !newsite.com$ [NC]
RewriteCond %{REMOTE_ADDR} !=xxx.xxx.xxx.xxx

1 个答案:

答案 0 :(得分:2)

感谢您的帮助,我想发布我在wordpress论坛中找到的解决方案: this 感谢@markrh的回答。问题是我需要将301重定向移到顶部的WordPress部分之上。我的规则永远不会达到,因为WordPress部分会捕获所有这些规则。