.htaccess更改后,所有页面都会重定向到主页

时间:2018-01-20 08:08:32

标签: wordpress .htaccess redirect

我有一个Wordpress网站,我试图直播,所以我已经改变了我的.htaccess文件,将所有页面重定向到除我以外的所有人的维护页面(基于我的IP)。以下是我的重写规则:

<IfModule mod_rewrite.c>

RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123
RewriteCond %{REQUEST_URI} !^/maintenance\.html$
RewriteRule ^(.*)$ /maintenance.html [R=307,L]

</IfModule>

这可以按预期工作:每个人都看到除我之外的维护页面。问题是只有主页对我有用:每个其他链接都会导致404错误。我该怎么做才能看到整个网站有效?

顺便说一下,该网站托管在使用Ubuntu的Dreamhost VPS服务器上。

1 个答案:

答案 0 :(得分:0)

按照以下方式更改规则为我解决了这个问题:

<IfModule mod_rewrite.c>

RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_ADDR} !^151\.42\.160\.116
RewriteCond %{REQUEST_URI} !^/maintenance\.html$
RewriteRule ^(.*)$ /maintenance.html [R=307,L]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

</IfModule>

我想一旦你将其他人重定向到维护页面,你仍然需要更多的重写规则,以便网站能够正常运行。