laravel在centos上如何部署HTTPS
导读:在CentOS上部署Laravel应用程序的HTTPS涉及几个步骤,包括获取SSL证书、配置Web服务器(如Apache或Nginx)以及更新Laravel配置。以下是使用Apache和Nginx的详细步骤: 使用Apache部署HTTPS...
在CentOS上部署Laravel应用程序的HTTPS涉及几个步骤,包括获取SSL证书、配置Web服务器(如Apache或Nginx)以及更新Laravel配置。以下是使用Apache和Nginx的详细步骤:
使用Apache部署HTTPS
-
安装Certbot: Certbot是一个自动化的工具,用于获取和续订Let’s Encrypt证书。
sudo yum install epel-release sudo yum install certbot python2-certbot-apache
-
获取SSL证书: 运行Certbot来获取证书。
sudo certbot --apache -d yourdomain.com -d www.yourdomain.com
按照提示完成证书的获取和配置。
-
配置Apache: Certbot会自动修改Apache配置文件以启用HTTPS。确保你的虚拟主机配置如下:
< VirtualHost *:443> ServerName yourdomain.com ServerAlias www.yourdomain.com DocumentRoot /var/www/html/your-laravel-app/public SSLEngine on SSLCertificateFile /etc/letsencrypt/live/yourdomain.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/yourdomain.com/privkey.pem Include /etc/letsencrypt/options-ssl-apache.conf < Directory /var/www/html/your-laravel-app/public> AllowOverride All Require all granted < /Directory> < /VirtualHost>
-
重启Apache:
sudo systemctl restart httpd
-
更新Laravel配置: 确保Laravel知道你正在使用HTTPS。编辑
.env
文件:FORCE_SSL=true
使用Nginx部署HTTPS
-
安装Certbot:
sudo yum install epel-release sudo yum install certbot python2-certbot-nginx
-
获取SSL证书: 运行Certbot来获取证书。
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
按照提示完成证书的获取和配置。
-
配置Nginx: Certbot会自动修改Nginx配置文件以启用HTTPS。确保你的服务器块配置如下:
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 /etc/letsencrypt/live/yourdomain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; root /var/www/html/your-laravel-app/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-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
-
重启Nginx:
sudo systemctl restart nginx
-
更新Laravel配置: 确保Laravel知道你正在使用HTTPS。编辑
.env
文件:FORCE_SSL=true
注意事项
-
防火墙配置:确保你的防火墙允许HTTP(80)和HTTPS(443)流量。
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
-
SELinux配置:如果启用了SELinux,可能需要调整相关策略以允许Web服务器访问必要的文件和目录。
通过以上步骤,你应该能够在CentOS上成功部署Laravel应用程序的HTTPS。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: laravel在centos上如何部署HTTPS
本文地址: https://pptw.com/jishu/724565.html