【问题标题】:Redirect to a subdirectory with .htaccess使用 .htaccess 重定向到子目录
【发布时间】:2017-04-29 20:14:56
【问题描述】:

我正在学习教程,但遇到了重定向问题。

我正在运行 ubuntu 16.04。

项目文件位于/var/www/html目录下,命名为tuto

我的目录 tuto 有以下目录:/controller/view/model/corewebroot,作为文件它有 index.php.htaccess

webroot目录有以下目录:/css/img/jsindex.php文件

我希望,当输入此 url://localhost/tuto/css/style.css 时,.htaccess 文件将在 webroot/css/style.css 中查找它

如何编码?

【问题讨论】:

    标签: php html apache .htaccess


    【解决方案1】:

    您应该在 htaccess 文件中简单地重定向该特定文件。 我假设你有几个重定向,所以把它放在所有重定向之前:

    RewriteEngine On
    
    RewriteRule ^css/style.css webroot/css/style.css [QSA,NC]
    

    在您的 html 代码中将其称为:

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

    【讨论】:

    • 感谢您的回答。它有效,但我想要更通用的东西,适用于所有网址。以下是本教程的建议和不起作用的内容:
    • 感谢您的回答。它有效,但我想要更通用的东西,适用于所有网址。这是本教程在根目录的 .htaccess 文件中向我提出的建议,但它不起作用:RewriteEngine On RewriteRule (. *) Webroot / $ 1 [L] 在 webroot 的 .htaccess 文件中:RewriteEngine On RewriteCond% [REQUEST_FILENAME]%! -d RewriteCond% [REQUEST_FILENAME]%! -f RewriteRule (. *) Webroot / $ 1 [L] 试过了,还是404错误
    【解决方案2】:

    您可以按照他们的建议进行操作,这可能会与您的其他 htaccess 重写规则发生冲突。我会简单地做

    RewriteEngine On
    
    RewriteRule ^css webroot/css [QSA,NC]
    RewriteRule ^js webroot/js [QSA,NC]
    

    那么每个指向 css/js 文件夹的链接实际上都会调用 webroot 文件夹

    【讨论】:

    • @MathurinAbossoloEvina
    • 解决了您的问题?
    猜你喜欢
    • 1970-01-01
    • 2019-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-08
    • 1970-01-01
    • 2012-09-07
    • 1970-01-01
    相关资源
    最近更新 更多