Laravel trailing Slashes перенаправляет на localhost
когда я попробую это
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 ^(.*)/$ / [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
4 ответов
измените код следующим образом:
Options -MultiViews
RewriteEngine On
RewriteBase /Testlaravel/public/
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
мой каталог проекта
c:\wamp\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/ [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 ^(.*)/$ / [L,R=301]
to
RewriteRule ^(.*)/$ /laravel_apps/li3/public/ [L,R=301]
Теперь, если вы поместите косую черту в конце url-адреса, он будет перенаправлен на ту же страницу