Laravel 5删除尾部斜杠时的不良行为 [英] Laravel 5 bad behaviour while removing trailing slash
问题描述
我已经在 mywebsite.com/laravel/下创建了一个Laravel项目.当我访问 mywebsite.com/laravel/test 时,一切正常,但是当我访问 mywebsite.com/laravel/test/时,我被重定向至 mywebsite.com/test .
I've created a Laravel project under mywebsite.com/laravel/. When I go to mywebsite.com/laravel/test, everything is ok, but when I go to mywebsite.com/laravel/test/, I'm redirected to mywebsite.com/test.
我的/laravel 目录中有文件 index.php 和 .htaccess .这是我的 .htaccess 文件:
I have the files index.php and .htaccess in my /laravel directory. This is my .htaccess file:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteBase /laravel
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
我不知道为什么RewriteBase
不起作用.我已经尝试过/laravel ,/laravel/和 laravel ;没有任何作用.
I have no idea why RewriteBase
doesn't work. I've tried /laravel, /laravel/ and laravel; nothing worked.
我的routes.php文件
My routes.php file
<?php
Route::get('/test/{name?}', 'MainController@index');
Route::group(['middleware' => ['web']], function () {
//
});
推荐答案
解决方案正在改变
RewriteRule ^(.*)/$ /$1 [L,R=301]
到
RewriteRule ^(.*)/$ $1 [L,R=301]
在我的情况下,请清除浏览器中的缓存:).
And in my case clear cache in my browser :).
这篇关于Laravel 5删除尾部斜杠时的不良行为的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!