在Linux环境下部署Laravel应用程序的SSL证书,通常需要以下几个步骤:
获取SSL证书 首先,你需要一个SSL证书。你可以从证书颁发机构(CA)购买,或者使用Let’s Encrypt等免费证书颁发机构。
安装Nginx或Apache Laravel可以通过Nginx或Apache服务器进行部署。这里以Nginx为例,安装Nginx:
sudo apt update
sudo apt install nginx
/etc/nginx/sites-available/
目录下。创建一个新的配置文件,例如yourdomain.com
,并添加以下内容:server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name yourdomain.com www.yourdomain.com;
ssl_certificate /path/to/your/fullchain.pem;
ssl_certificate_key /path/to/your/private.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384';
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
root /path/to/your/laravel/public;
index index.php index.html index.htm;
location /
{
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$
{
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.(?!well-known).*$
{
deny all;
}
}
将yourdomain.com
替换为你的域名,将/path/to/your/fullchain.pem
和/path/to/your/private.key
替换为你的SSL证书和私钥的路径。
sites-enabled
目录:sudo ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled/
sudo nginx -t
如果没有错误,重启Nginx以应用更改:
sudo systemctl restart nginx
.env
文件中的APP_URL
设置为你的域名:APP_URL=https://yourdomain.com
cd /path/to/your/laravel
php artisan migrate
现在,你的Laravel应用程序应该已经通过HTTPS提供服务了。访问你的域名,你应该能看到浏览器地址栏中的安全锁图标。