【问题标题】:How to .htacces redirect subfolder to another subfolder without changing url in browserbar如何在不更改浏览器栏中的 url 的情况下将 .htaccess 子文件夹重定向到另一个子文件夹
【发布时间】:2014-12-13 19:49:24
【问题描述】:

我又被困在 htaccess 中了! (不是我最强的技能);-)

如何重定向:

www.domain.com/folder1

到:

www.domain.com/folder2/something/

不更改浏览器栏中的网址? (所以继续显示 www.domain.com/folder1 )

【问题讨论】:

    标签: .htaccess mod-rewrite redirect url-rewriting subdomain


    【解决方案1】:

    尝试将此添加到文档根目录中的 htaccess 文件中:

    RewriteEngine On
    
    # externally redirect requests made for folder2/something
    RewriteCond %{THE_REQUEST} \ /+folder2/something/
    RewriteRule ^ /folder1 [L,R=301]
    
    # internally rewrite the request back to /folder2/something/
    RewriteRule ^folder1 /folder2/something/ [L]
    

    【讨论】:

    • 谢谢!但由于某种原因,这也破坏了整个 CSS 等。那些(css/js/image)文件现在被重定向到错误的文件夹。
    • @user2987394 可能是因为您有相对 URL,并且如果您像正在做的那样更改 URI 基础,则会中断。将它们全部更改为您的 css/js/images 的绝对 URL。
    • 谢谢。是的,没错,我使用的是相对 URL。嗯,除了将我的所有资产更改为绝对 URL 之外,没有其他解决方案吗?这不是很理想。
    • 顺便说一句,从技术上讲,没有必要将 www.domain.com/folder2/something/ 指向 www.domain.com/folder1,所以这部分不解决上述问题吗?或者这是不可能的?
    • 就像我说的,您必须使用绝对 url,因为您已经更改了 URI 基础,或者在页面标题中使用类似 <base href="/" /> 的内容
    猜你喜欢
    • 1970-01-01
    • 2016-06-03
    • 2013-02-01
    • 2015-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-05
    相关资源
    最近更新 更多