2

我正在尝试对波浪号 URL 进行以下重写:

RewriteRule ^/?~folder/(.*) http://whatever.com/$1 [R=302,L]

我希望任何链接whatever.com/~folder/something都成为whatever.com/something.

如果我的情况排除了波浪号(也尝试转义它,\~),上述重写规则似乎有效,但是使用波浪号它不会执行重写。

我需要调整更广泛的配置设置以在我的情况下启用重写吗?我理解通常~folder是指用户的主目录,但我不知道它是如何发挥作用的,或者可以根据我的情况进行调整。

4

3 回答 3

2

我能够使用 webroot (public_html) 上的 .htaccess 规则修复对http://domain.ext/~blog/file.html的任何点击:

RewriteRule ^~blog/(.*)$ /site/legacy/users/blog/$1 [R=301,L]

来自:http ://webmaster.iu.edu/tools-and-guides/maintenance/redirect-htaccess.phtml

于 2013-07-10T11:29:24.390 回答
0

它可能与mod_userdir您提到的用途有关。如果现在已激活,请检查您的 apache 配置,并查看禁用它是否可以解决问题。

http://httpd.apache.org/docs/2.2/mod/mod_userdir.html

于 2011-11-18T10:28:46.870 回答
0

我使用此规则重定向以波浪号开头的所有内容

RewriteCond %{REQUEST_URI} ^/~([a-z]+)/
RewriteRule ^(.*)$ http://www.mysite.fr/$1 [R=301,L]

来自@Sigg3.net 来源:http ://webmaster.iu.edu/tools-and-guides/maintenance/redirect-htaccess.phtml

于 2015-01-15T14:33:46.530 回答