我有一个网站,本应使用 SSL,但 Cpanel 中有两个条目httpd.conf
似乎导致了问题。当我访问时,www.website.com
我要求它转到https://www.website.com
。但是我必须https://
直接写入 才能使网站正常运行。安全网站也具有不同的 IP。
我也不打算直接编辑,httpd.conf
并且不确定如何更改以下指令:
<VirtualHost 1.1.1.1:80>
ServerName website.com
ServerAlias www.website.com
DocumentRoot /home/websitec/public_html
ServerAdmin [email protected]
## User websitec # Needed for Cpanel::ApacheConf
<IfModule mod_suphp.c>
suPHP_UserGroup websitec websitec
</IfModule>
<IfModule !mod_disable_suexec.c>
<IfModule !mod_ruid2.c>
SuexecUserGroup websitec websitec
</IfModule>
</IfModule>
<IfModule mod_ruid2.c>
RUidGid websitec websitec
</IfModule>
CustomLog /usr/local/apache/domlogs/website.com-bytes_log "%{%s}t %I .\n%{%s}t %O ."
CustomLog /usr/local/apache/domlogs/website.com combined
ScriptAlias /cgi-bin/ /home/websitec/public_html/cgi-bin/
</VirtualHost>
<VirtualHost 2.2.2.2:443>
ServerName website.com
ServerAlias www.website.com
DocumentRoot /home/websitec/public_html
ServerAdmin [email protected]
UseCanonicalName Off
CustomLog /usr/local/apache/domlogs/website.com combined
CustomLog /usr/local/apache/domlogs/website.com-bytes_log "%{%s}t %I .\n%{%s}t %O ."
## User websitec # Needed for Cpanel::ApacheConf
<IfModule mod_suphp.c>
suPHP_UserGroup websitec websitec
</IfModule>
<IfModule !mod_disable_suexec.c>
<IfModule !mod_ruid2.c>
SuexecUserGroup websitec websitec
</IfModule>
</IfModule>
<IfModule mod_ruid2.c>
RUidGid websitec websitec
</IfModule>
ScriptAlias /cgi-bin/ /home/websitec/public_html/cgi-bin/
SSLEngine on
SSLCertificateFile /etc/ssl/certs/www.website.com.crt
SSLCertificateKeyFile /etc/ssl/private/www.website.com.key
SSLCACertificateFile /etc/ssl/certs/www.website.com.cabundle
CustomLog /usr/local/apache/domlogs/website.com-ssl_log combined
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
<Directory "/home/websitec/public_html/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
# To customize this VirtualHost use an include file at the following location
# Include "/usr/local/apache/conf/userdata/ssl/2/websitec/website.com/*.conf"
</VirtualHost>
如您所见,安全指令之前显然有不安全指令。这可能是问题所在,但是如果我尝试在 WHM 中更改网站的 IP,我会收到一条错误消息,提示 IP(2.2.2.2)已被使用。我猜是这样的。
任何帮助都将受到赞赏。
答案1
您的问题中没有明确说明是否应该使用不同的 IP 地址为同一网站设置两个不同的条目。我不知道 cPanel 是否可以实现这样的功能,更不用说独立服务器了(除非您正在运行一些奇怪的非标准设置)。对我来说,这听起来像是一个错误/不正确的设置。我建议重建 httpd.conf 文件。
- 备份你的 httpd.conf 文件以防万一:
cp httpd.conf httpd.conf.backup
- 通过运行重建 httpd.conf 文件
/usr/local/cpanel/bin/build_apache_conf
- 测试您的 httpd.conf 文件中是否存在任何错误
service httpd -t
(service httpd config-test
取决于您正在运行的 Apache 版本)。
如果我确实认为这两个条目不应该存在,那么这个问题应该已经解决了。现在让我们继续安装 SSL 证书。
基本
- SSL 需要专用 IP 地址。您可以通过 WHM 修改网站以获得专用 IP 地址:
Main >> Account Functions >> Change Site's IP Address
- 通过 WHM 为您的网站生成 SSL 证书:
Main >> SSL/TLS >> Generate a SSL Certificate and Signing Request
- 将签名请求发送给您的 SSL 公司
- 通过 WHM 安装 SSL 公司提供的 SSL 证书:
Main >> SSL/TLS >> Install a SSL Certificate and Setup the Domain
如果一切顺利,您的 SSL 证书应该已安装,并且http://www.website.com/
和https://www.website.com/
应该都可以正常工作。如果您想设置重定向,可以在该域的 cPanel 中完成。