阿帕奇 mod_rewrite
Apache mod_rewrite
我正在使用在 tomcat 上运行的 Liferay 6.2 EE,但它的前端是 Apache 服务器。我想重定向用户,以便每当他们点击旧的 liferay URL,它就会将他们重定向到新的 liferay URL。我在 liferay 中更改了 URL,所以它现在是新的 URL。但是,每当我尝试转到旧 URL 时,我都会收到页面请求错误。它从不将我重定向到新 URL。在 /san/apache/conf/
中,我将重定向代码放在 httpd.conf
中。这是我的代码:
RewriteEngine On
RewriteRule ^group/old/(.*) /group/new/ [L]
应用这些更改后,我重新启动了 Apache 服务器,但它仍然不起作用。我也尝试了很多其他组合。有谁知道我做错了什么?还有其他地方我必须进行此更改吗?
啊,因为你的重写规则位于服务器配置文件中(而不是 htaccess
文件),mod-rewrite 接收带有前导斜杠的 URLs (/
) .所以,规则应该是:
RewriteEngine On
RewriteRule ^/group/old/(.*) /group/new/ [L]
我正在使用在 tomcat 上运行的 Liferay 6.2 EE,但它的前端是 Apache 服务器。我想重定向用户,以便每当他们点击旧的 liferay URL,它就会将他们重定向到新的 liferay URL。我在 liferay 中更改了 URL,所以它现在是新的 URL。但是,每当我尝试转到旧 URL 时,我都会收到页面请求错误。它从不将我重定向到新 URL。在 /san/apache/conf/
中,我将重定向代码放在 httpd.conf
中。这是我的代码:
RewriteEngine On
RewriteRule ^group/old/(.*) /group/new/ [L]
应用这些更改后,我重新启动了 Apache 服务器,但它仍然不起作用。我也尝试了很多其他组合。有谁知道我做错了什么?还有其他地方我必须进行此更改吗?
啊,因为你的重写规则位于服务器配置文件中(而不是 htaccess
文件),mod-rewrite 接收带有前导斜杠的 URLs (/
) .所以,规则应该是:
RewriteEngine On
RewriteRule ^/group/old/(.*) /group/new/ [L]