1

我对 Apache 很陌生,并且已经遇到了一个已经花费大量时间的问题,我什至不确定这是否可能。

我有两台服务器和一个名为的域,它对我的​​第一台服务器szop.in有记录。A在第一台服务器上,我正在运行一个名为 YOURLS 的 URL 缩短器,它位于szop.in/admin. 我希望第二台服务器为我的主页提供服务,因此我想将所有请求重定向szop.inhttp://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以其他域开头的内容重定向。

4

1 回答 1

1

你几乎明白了:

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.

于 2013-09-03T14:57:00.157 回答