【问题标题】:.htaccess tweak to redirect to /subfolder/public.htaccess 调整以重定向到 /subfolder/public
【发布时间】:2016-01-25 19:43:05
【问题描述】:

我在共享主机上部署的所有 Laravel 站点上运行此脚本,以预先添加 www 并将所有流量重定向到 /public。

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=302,L]

    RewriteCond %{REQUEST_URI} !^/public/
    RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

我现在想做的是对其进行调整,以便将流量重定向到 /subfolder/public,但我无法使其正常工作。

【问题讨论】:

    标签: php .htaccess laravel redirect


    【解决方案1】:

    你可以使用:

    <IfModule mod_rewrite.c>
        RewriteEngine on
        RewriteCond %{HTTP_HOST} !^www\. [NC]
        RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=302,L]
    
        RewriteCond %{REQUEST_URI} !^/subfolder/public/ [NC]
        RewriteRule ^(.*)$ subfolder/public/$1 [L]
    </IfModule>
    

    【讨论】:

    • 我收到内部服务器错误
    • 在我的 Apache 上使用相同规则时没有收到任何错误。确保这些规则位于站点根目录 .htaccess 中,并且没有其他冲突规则。此外,检查您的 Apache 错误日志文件是否存在 500 错误
    • 所以我需要在根目录中有我的 .htaccess 吗?已经有一个包含以下内容的 .htaccess 文件(我还没有写):pastebin.com/uDytQd7q(有没有办法在 cmets 中包含代码?)如何将两者结合起来?
    • 我尝试了很多组合,使用 [L] 标志,似乎没有任何效果。我一无所知。愿意进一步帮助我吗?将不胜感激
    • RewriteBase /index.php 在您的 htaccess 中绝对是错误的。此外,您需要知道这个 .htaccess 位于哪个文件夹中,subfolder/public/ 是该位置的子目录吗?
    猜你喜欢
    • 2016-11-12
    • 2019-03-16
    • 2020-10-10
    • 1970-01-01
    • 2021-09-29
    • 1970-01-01
    • 2020-10-31
    • 1970-01-01
    • 2018-10-21
    相关资源
    最近更新 更多