繁体   English   中英

mod_rewrite规则,用于替换URL中的字符串

[英]mod_rewrite rule for replacing string in URL

我想替换旧网址中的字符串:

http://www.homepage.com/projectname/public/ActionName.action

http://www.homepage.com/ActionName.action

甚至

http://www.homepage.com/short

我到了这一点(尝试简化为http://www.homepage.com/ActionName.action

RewriteEngine On
RewriteRule ^/projectname/public/(.*)$ http://www.homepage.com/$1 [R=301,L]

但我收到404错误:

The requested resource (/projectnameActionName.action) is not available.

我认为您正在寻找internal重定向。

因此,如果您希望能够在浏览器中输入如下网址:

http://www.homepage.com/ActionName.action

但是显示这样的页面:

http://www.homepage.com/projectname/public/ActionName.action

然后在your.htaccess中使用此代码。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+) http://www.homepage.com/projetname/public/$1 [NC,L]

当然,将域名和文件夹替换为您的域名和文件夹。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM