Apache 将条件和规则重写到交换机端口
我们在端口81的服务器上安装了webmail,并且www.example.com:81/webmail/将适用于服务器上的任何域。但是,我们希望将输入www.example.com/webmail/的用户重定向到端口81 它需要适用于所有域,因此www.example2.com/webmail/应该重定向到www.example2.com:81/webmail/ 我已经尝试了以下方法,但可以重定向所有内容-如何将/webmail目录请求附加到条件中Apache 将条件和规则重写到交换机端口,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,我们在端口81的服务器上安装了webmail,并且www.example.com:81/webmail/将适用于服务器上的任何域。但是,我们希望将输入www.example.com/webmail/的用户重定向到端口81 它需要适用于所有域,因此www.example2.com/webmail/应该重定向到www.example2.com:81/webmail/ 我已经尝试了以下方法,但可以重定向所有内容-如何将/webmail目录请求附加到条件中 RewriteCond%{HTTP_HOST}
RewriteCond%{HTTP_HOST}^([^:]+)(:[0-9]+)?$
重写规则^http://%1:81/webmail[R,L]
(注意,我必须添加空格,因为我尝试提交时产生了一个错误)
此代码将位于/etc/httpd/conf.d中的.conf文件中,以防有任何区别
任何帮助都将不胜感激。谢谢。你可以试试这个
RewriteEngine on
RewriteCond %{SERVER_PORT} !^81$
RewriteRule ^webmail/?$ http://%{HTTP_HOST}:81/webmail [R=301,L]
谢谢,这只不过是一个小小的改变。我在重写规则中添加了(.*)以使^(.*)webmail/?$-现在它很有用!