0

我有一个网站www.website.com和一些重定向到该网站的域。这是一个带掩码的重定向,所以如果我写,www.domain.com我可以一直在浏览器中看到这个 url,但它实际上被重定向到subdomain.website.com我想做的是做一些.htaccess重写规则,这样所有有域的东西都domain.com将被重写为服务器上的本地文件,位于当前文件夹之外。让我在这里解释文件夹结构:

/
sub/
-- subdomain/
-- test/
---- index.html
web/

目前一切从www.domain.com去到/sub/subdomain。在里面 。htaccess文件中的/sub/subdomain我想将请求重新路由到/sub/test/index.html. 所以在我.htaccess的文件sub/subdomain夹中的文件中,我尝试了这个:

#start masked redirect
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
#RewriteBase /

RewriteCond %{HTTP_HOST} domain\.com$ [NC]
RewriteRule .. /test/index.html [L]
#end masked redirect 


# 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>

# END WordPress

是的,我在 Wordpress 之上做这一切,我真的不相信这很重要,但只是为了确保我发布它。

不幸的是我得到Internal Server Error 500

请问我做错了什么?

另外:请不要问我为什么要这样做,这是有原因的,我没有揭露我正在尝试做的全部事情,因为它与这个问题无关,我真的想专注于这个问题在这里。我只想知道如何修复我的 .htaccess ,它必须是这样的。感谢您的理解。

4

1 回答 1

0

这应该在sub/subdomain/.htaccess文件中

Options +FollowSymLinks -MultiViews
RewriteEngine On

RewriteCond %{HTTP_HOST} ^subdomain\. [NC]
RewriteRule !^test/index\.html$ /test/index.html [L,NC]

# 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>

# END WordPress
于 2013-10-16T10:06:57.990 回答