Php Laravel使用HTTPS
我有一个项目,我在ubuntu服务器上安装了SSL证书。我已经完成了我找到的每一个解决方案,但每次打开页面时都会收到这条消息Php Laravel使用HTTPS,php,laravel,.htaccess,laravel-5,laravel-routing,Php,Laravel,.htaccess,Laravel 5,Laravel Routing,我有一个项目,我在ubuntu服务器上安装了SSL证书。我已经完成了我找到的每一个解决方案,但每次打开页面时都会收到这条消息 The requested URL /about was not found on this server. 以下是我为强制Laravel使用https所做的更改: 1-我已更改公用文件夹中的.htaccess并添加了以下行 # Added to Force HTTPS RewriteCond %{HTTPS} !=on RewriteRule ^.*$ https:/
The requested URL /about was not found on this server.
以下是我为强制Laravel使用https所做的更改:
1-我已更改公用文件夹中的.htaccess并添加了以下行
# Added to Force HTTPS
RewriteCond %{HTTPS} !=on
RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
2-在app->Providers->AppServiceProvider中,我已将其添加到boot()函数中
3-我创建了php artisan make:middleware ForceSSL,并将以下代码添加到句柄函数中
if (!$request->secure() && in_array(env('APP_ENV'), ['stage', 'production'])) {
return redirect()->secure($request->getRequestUri());
}
return $next($request);
在Kernal.php中
\MyApp\Http\Middleware\ForceSSL::class
在.env文件中,我已将APP_URL更改为https://
我还更改了config文件夹中APP.php中的APP_URL
我错过了什么?两天以来,我一直不明白为什么:(有几件事需要确保工作正常:
index.php
。就像有时laravel.com/aboutus不工作,但laravel.com/index.php/aboutus工作。如果是这样,您需要在php中启用mod_rewrite
,然后在virtualhost配置中添加AllowOverride All
,然后重新启动apache443
,这是SSL端口。此外,如果您有SSL证书,还需要配置这些证书.htaccess
重写条件php-artisan-config:clear
和php-artisan-route:cache
希望这有助于调试此AWS | Centos | EC2 | AWS证书 有点晚了,但我自己我只需要在我的env.文件中更改它:
APP_URL=http://localhost
to
APP_URL=https://localhost
一切都很顺利。但没有帮助?您是否在路由中设置了路由/url
/about
设置?可能会重新进行配置?php artisan config:clear
使用php artisan route:list检查路由这可能是一个愚蠢的问题,但您是否将vhost设置为除了http之外还提供https服务?默认情况下,您有
这只适用于http,您还需要一个带有证书配置的
您使用的是nginx还是apache?(或其他)我使用的是Apache2主页正在打开,所有其他页面都不工作。如果您说您的主页可以使用HTTPS,但不能使用内部页面,请检查.htaccess
文件和
APP_URL=http://localhost
to
APP_URL=https://localhost