在CentOS环境下为PHP配置SSL,通常涉及以下几个步骤:
-
获取SSL证书:
- 你可以从Let’s Encrypt免费获取SSL证书。
- 使用Certbot工具来申请和安装证书。
-
安装Certbot:
- 使用以下命令安装Certbot:
sudo yum install epel-release sudo yum install certbot
- 使用以下命令安装Certbot:
-
获取并安装SSL证书:
- 运行Certbot来获取证书:
sudo certbot certonly --standalone -d yourdomain.com -d www.yourdomain.com
- 按照提示完成证书的申请和安装。
- 运行Certbot来获取证书:
-
配置Nginx或Apache:
- 如果你使用的是Nginx,编辑Nginx配置文件(通常位于
/etc/nginx/conf.d/yourdomain.com.conf
):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; location / { root /var/www/html; index index.php index.html index.htm; } location ~ \.php$ { fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; include fastcgi.conf; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; } } server { listen 80; server_name yourdomain.com www.yourdomain.com; location /.well-known/acme-challenge/ { root /var/www/html; } location / { return 301 https://$host$request_uri; } }
- 如果你使用的是Apache,编辑Apache配置文件(通常位于
/etc/httpd/conf.d/yourdomain.com.conf
):ServerName yourdomain.com ServerAlias www.yourdomain.com 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 SSLCACertificateFile /etc/letsencrypt/ssl-dhparams.pem DocumentRoot /var/www/html Options Indexes FollowSymLinks AllowOverride All Require all granted SetHandler "proxy:fcgi://localhost:9000" ProxyPass / fcgi://localhost:9000/ ProxyPassReverse / fcgi://localhost:9000/ ServerName yourdomain.com ServerAlias www.yourdomain.com Redirect permanent / https://yourdomain.com/
- 如果你使用的是Nginx,编辑Nginx配置文件(通常位于
-
重启Nginx或Apache:
- 对于Nginx:
sudo systemctl restart nginx
- 对于Apache:
sudo systemctl restart httpd
- 对于Nginx:
-
配置PHP-FPM(如果使用PHP-FPM):
- 编辑PHP-FPM配置文件(通常位于
/etc/php-fpm.d/www.conf
),确保监听地址正确:listen = /var/run/php-fpm/php-fpm.sock
- 重启PHP-FPM服务:
sudo systemctl restart php-fpm
- 编辑PHP-FPM配置文件(通常位于
完成以上步骤后,你的CentOS环境下的PHP应用应该已经成功配置了SSL。你可以通过访问https://yourdomain.com
来验证SSL证书是否正确安装和配置。