Laravel 5:当 url 以“/”结尾时防止重定向 [重复]
Posted
技术标签:
【中文标题】Laravel 5:当 url 以“/”结尾时防止重定向 [重复]【英文标题】:Laravel 5: Prevent redirection when the url ends with “/” [duplicate] 【发布时间】:2016-02-11 00:19:50 【问题描述】:我的申请网址是:
http://localhost/my-app
我的管理面板在这里:
http://localhost/my-app/admin
但是当我尝试使用这个 url 访问管理面板时:
http://localhost/my-app/admin/
它将我重定向到:
http://localhost/admin
有没有办法防止这种情况发生?我也想从此网址访问管理面板。
我的 htaccess 文件目前看起来像这样:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %REQUEST_FILENAME !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %REQUEST_FILENAME !-d
RewriteCond %REQUEST_FILENAME !-f
RewriteRule ^ index.php [L]
</IfModule>
【问题讨论】:
附言。我删除了“# Redirect Trailing Slashes If Not A Folder ...”行,但它仍然不起作用..我也重新启动了 wamp。 你试过在RewriteEngine On
之后添加RewriteBase /my-app
吗?
但是您的生产环境中没有子目录。所以它应该可以工作,不是吗?
Tim 在这里看起来是正确的。当您在删除尾部斜杠重写规则后说“它仍然不起作用”时,这到底是什么意思?它仍然重定向到“/admin”还是将您发送到其他地方?
它仍然重定向到“/admin”
【参考方案1】:
我无法发表评论,所以我会在这里尝试。
你需要从 .htaccess 中删除这一行
RewriteRule ^(.*)/$ /$1 [L,R=301]
或者在它前面加#来评论。
【讨论】:
以上是关于Laravel 5:当 url 以“/”结尾时防止重定向 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
Codeigniter - 当 URL 以斜杠结尾时,相对 URL 停止工作?
当 URL 以 Slash 结尾时,Django path() 抛出 404