在Ubuntu系统中配置ThinkPHP框架的SSL证书,通常需要以下几个步骤:
获取SSL证书:
安装Certbot: 打开终端并运行以下命令来安装Certbot:
sudo apt update sudo apt install certbot python3-certbot-nginx 配置Nginx:
/etc/nginx/sites-available/目录下。example.com,编辑对应的配置文件(例如example.com.conf)。server { listen 80; server_name example.com www.example.com; location /.well-known/acme-challenge/ { root /var/www/html; } location / { return 301 https://$host$request_uri; } } server { listen 443 ssl; server_name example.com www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; root /var/www/html; index index.php index.html index.htm; location ~ \.php$ { fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # 根据你的PHP版本调整 fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location / { try_files $uri $uri/ /index.php?$query_string; } } 启用配置: 创建一个符号链接以启用新的Nginx配置:
sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/ 测试Nginx配置: 运行以下命令来测试Nginx配置是否正确:
sudo nginx -t 重新加载Nginx: 如果配置测试通过,重新加载Nginx以应用更改:
sudo systemctl reload nginx 获取并安装SSL证书: 使用Certbot来获取并安装SSL证书:
sudo certbot --nginx -d example.com -d www.example.com Certbot会自动更新Nginx配置文件并重启Nginx。
验证SSL证书: 打开浏览器并访问https://example.com,确保SSL证书已正确安装并且网站可以正常访问。
完成以上步骤后,你的ThinkPHP应用应该已经通过HTTPS提供服务了。