【问题标题】:htaccess directoryindex redirect looking for css wrong placehtaccess directoryindex重定向寻找css错误的地方
【发布时间】:2013-03-09 21:20:01
【问题描述】:

您好,在我的 htaccesss 文件中,我将这段代码放入以确保我的目录索引文件设置为

v2013/index.html

所以我把这段代码

DirectoryIndex v2013/index.html

然后我希望它看起来像 mydomain.com/Welcome,所以我添加..

RewriteEngine On
RewriteRule ^Welcome$ v2013/index.html [L]

我的问题是为什么 DirectoryIndex 不再工作.. 我如何告诉浏览器在 v2013 中查找 css,因为正在查找根目录。 (我认为是因为重写)所以我的页面没有风格.. =(

换句话说就是寻找 www.domain.com/css/sheet.css 的 insted

www.domain.com/v2013/css/sheet.css

答案在这里:

最终代码

DirectoryIndex v2013/index.html

RewriteEngine On

# exclude files already asking for v2013
RewriteCond %{REQUEST_URI} !^/v2013/
RewriteRule ^css/.*$ /v2013/$0
RewriteRule ^js/.*$ /v2013/$0
RewriteRule ^images/.*$ /v2013/$0

RewriteRule ^Bienvenido$ v2013/index.html [L]

【问题讨论】:

    标签: .htaccess rewrite directoryindex


    【解决方案1】:

    您可以添加一个额外的RewriteRule,它也会重写css/js/images/ 文件

    # exclude files already asking for v2013
    RewriteCond %{REQUEST_URI} !^/v2013/
    RewriteRule ^(?:css|images|js)/.*$ /v2013/$0
    

    【讨论】:

    • 嘿,谢谢!!你几乎明白了!...但我需要同样的调用图像。我必须为每个文件夹做同样的事情吗?编辑(是的,它有效)
    【解决方案2】:

    在你使用 css 文件的地方不要输入“css/style.css”,而是写“/css/style.css”。添加 / 会将您带到根目录。 html 应如下所示:

         <link href="/v2013/css/style.css" rel"stylesheet" type="text/css" />
    

    【讨论】:

    • 你可能错过了这一点......此时正在寻找 www.domain.com/css/sheet.css 如果我把 /css/ 不打算看 www.domain.com /v2013/css/sheet 另外,如果您访问 domain.com/v2013/index.html 我的页面看起来很棒,这是 htaccess 中的一个问题,因此我可以在 domain.com/welcome 上显示我的页面
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    • 1970-01-01
    • 2010-11-18
    • 1970-01-01
    • 2020-02-15
    • 2015-09-25
    相关资源
    最近更新 更多