我是Apache的新手,已经遇到了一个需要很多时间的问题,我甚至不确定这是否可能。
我有两个服务器和一个名为szop.in
的域,它与我的第一个服务器有一个A
记录。在第一台服务器上,我正在运行一个名为YOURLS的URL缩短程序,它位于szop.in/admin
下。我希望第二服务器为我的主页服务,因此我希望将所有请求(如szop.in
或http://subdomain.szop.in
)重定向到第二服务器,而不是http://szop.in/admin
。
这可能吗?
这似乎不是正确的解决方案,mod_rewrite
让我有些头疼:
RewriteEngine On
RewriteCond %{HTTP_HOST} szop.in [NC]
RewriteRule !^/admin$ hxxp://other-domain.in [R=301,L]
我的想法是,由于我只需要一个URL就可以在第一个服务器http://szop.in/admin
上工作,所以将所有不以/admin
开头的内容重定向到另一个域。
你几乎做到了:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^szop.in$ [NC]
RewriteCond %{REQUEST_URI} !^/admin [NC]
RewriteRule ^ http://subdomain.szop.in%{REQUEST_URI} [R=301,L]
你不能像那样在RewriteRule
上使用否定,你可以在条件上使用它。
这应该是您想要的,它会验证域是否是szop.in
,文件夹是否不是/admin
,并重定向到subdomain.szop.in
。