.htaccess 在Laravel 5项目上应用SSL后,所有路由上的404
我已经在服务器上部署了我的项目。它在.htaccess 在Laravel 5项目上应用SSL后,所有路由上的404,.htaccess,mod-rewrite,ssl,laravel-5,laravel-routing,.htaccess,Mod Rewrite,Ssl,Laravel 5,Laravel Routing,我已经在服务器上部署了我的项目。它在http上运行良好,但当我应用SSL证书并尝试使用https访问URL时,会显示404错误 几个小时以来我一直试图找到解决办法,但没有成功。这是我的.htaccess文件 .htaccess <IfModule mod_rewrite.c> <IfModule mod_negotiation.c> Options -MultiViews </IfModule> RewriteEngi
http
上运行良好,但当我应用SSL证书并尝试使用https
访问URL时,会显示404
错误
几个小时以来我一直试图找到解决办法,但没有成功。这是我的.htaccess文件
.htaccess
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
RewriteBase /
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://serveravatar.com/%$1 [R,L]
</IfModule>
选项-多视图
重新启动发动机
重写基/
#重定向尾部斜杠。。。
重写规则^(.*)/$/$1[L,R=301]
#处理前控制器。。。
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-F
重写规则^index.php[L]
重新启动发动机
重写条件%{HTTPS}关闭
重写规则(.*)https://serveravatar.com/%$1[R,L]
我找不到错误。我也尝试过编辑AppServiceProvider,但没有成功 @SArnab所说的是正确的,把它移到你的标准规则之前。此外,编写规则的更好方法是:
RewriteCond %{HTTPS} !=on
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
HTTPS条件不应该先于Laravel规则吗?此外,您不需要两次声明RewriteEngine开启。在HTTPS重定向中,在$1之前不需要该百分比。