当我尝试这个时
http://localhost/Testlaravel/public/users/login
它有效。但是当我尝试
时http://localhost/Testlaravel/public/users/login/
它将我重定向到
http://localhost/users/login/
知道为什么吗?
这是我的htaccess文件
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
答案 0 :(得分:20)
将您的代码更改为:
Options -MultiViews
RewriteEngine On
RewriteBase /Testlaravel/public/
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ $1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
答案 1 :(得分:1)
如果上述方法无效,请清除浏览器历史记录 缓存并重试。
答案 2 :(得分:0)
我刚刚将它添加到我的.htaccess文件中,它工作正常!
RewriteCond %{REQUEST_URI} !^
答案 3 :(得分:0)
我的项目目录是
C:\瓦帕\ WWW \ laravel_apps \ LI3 \
并将公共文件夹中的.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 ^(.*)/$ /laravel_apps/li3/public/$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
我刚刚更换了
RewriteRule ^(.*)/$ /$1 [L,R=301]
到
RewriteRule ^(.*)/$ /laravel_apps/li3/public/$1 [L,R=301]
现在,如果你在网址的末尾添加一个斜杠,它将重定向到同一页面