温馨提示×

centos上php如何配置SSL证书

小樊
45
2025-02-24 18:13:26
栏目: 云计算
亿速云SSL证书,防劫持篡改、防监听窃取、提升搜索排名 点击了解>>

在CentOS上为PHP配置SSL证书,通常需要以下几个步骤:

  1. 获取SSL证书 首先,你需要从证书颁发机构(CA)获取SSL证书。这通常包括一个证书文件(例如:your_domain.crt),一个私钥文件(例如:your_domain.key)以及可能的中间证书文件(例如:intermediate.crt)。

  2. 安装Certbot Certbot是一个自动化的工具,用于获取和更新Let’s Encrypt SSL证书。在CentOS上安装Certbot,可以使用以下命令:

sudo yum install epel-release
sudo yum install certbot
  1. 获取SSL证书 使用Certbot获取SSL证书。以下命令将引导你完成证书申请过程:
sudo certbot certonly --standalone -d your_domain.com -d www.your_domain.com

在申请过程中,Certbot会要求你输入电子邮件地址、同意服务条款等。完成后,Certbot会在/etc/letsencrypt/live/your_domain.com/目录下生成证书文件。

  1. 配置Web服务器 根据你使用的Web服务器(例如:Apache、Nginx等),配置SSL证书。以下是Apache和Nginx的示例配置:
  • Apache(/etc/httpd/conf.d/your_domain.conf):
<VirtualHost *:443>
    ServerName your_domain.com
    ServerAlias www.your_domain.com
    DocumentRoot /var/www/html

    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/your_domain.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/your_domain.com/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/your_domain.com/chain.pem

    <Directory /var/www/html>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/your_domain_error.log
    CustomLog ${APACHE_LOG_DIR}/your_domain_access.log combined
</VirtualHost>
  • Nginx(/etc/nginx/conf.d/your_domain.conf):
server {
    listen 443 ssl;
    server_name your_domain.com www.your_domain.com;
    root /var/www/html;

    ssl_certificate /etc/letsencrypt/live/your_domain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/your_domain.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/your_domain.com/chain.pem;

    location / {
        try_files $uri $uri/ =404;
    }

    error_log /var/log/nginx/your_domain_error.log;
    access_log /var/log/nginx/your_domain_access.log;
}
  1. 重启Web服务器 根据你使用的Web服务器,重启服务以应用更改:
  • Apache:
sudo systemctl restart httpd
  • Nginx:
sudo systemctl restart nginx
  1. 配置PHP 确保PHP-FPM(FastCGI Process Manager)使用HTTPS。编辑/etc/php-fpm.d/www.conf文件,找到以下行:
;listen = 127.0.0.1:9000

取消注释并更改为:

listen = 127.0.0.1:9000 ssl

然后重启PHP-FPM服务:

sudo systemctl restart php-fpm

现在,你的CentOS服务器上的PHP应用程序应该已经配置了SSL证书。请确保在浏览器中访问https://your_domain.com以验证SSL证书是否正确安装。

亿速云提供多种品牌、不同类型SSL证书签发服务,包含:域名型、企业型、企业型专业版、增强型以及增强型专业版,单域名SSL证书300元/年起。点击查看>>

推荐阅读:php在centos上如何配置SSL证书

0