Apache2仅单个虚拟主机HTTPS无法访问问题求助
问题排查与解决方案
核心问题:缺少HTTPS虚拟主机配置
你当前的wpsite.conf仅配置了80端口的HTTP虚拟主机,没有对应443端口的HTTPS虚拟主机块。Apache无法将HTTPS请求正确路由到你的WordPress站点目录,这是导致404错误的直接原因。请将以下HTTPS虚拟主机配置添加到
wpsite.conf中,注意替换SSL证书相关路径为你服务器上的实际路径:<VirtualHost 10.11.11.11:443> ServerAdmin admin@email.com DocumentRoot /srv/www/wpsite ServerName wpsite.com # 启用SSL并配置证书 SSLEngine on SSLCertificateFile /path/to/your/ca-issued-cert.crt SSLCertificateKeyFile /path/to/your/private-key.key # 若存在CA中间证书,取消注释下面一行并填写路径 # SSLCertificateChainFile /path/to/your/chain.crt <Directory /srv/www/wpsite/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory> LogLevel warn ErrorLog ${APACHE_LOG_DIR}/wpsite_ssl_error.log CustomLog ${APACHE_LOG_DIR}/wpsite_ssl_access.log combined </VirtualHost>同步WordPress站点URL
即使HTTPS虚拟主机配置完成,WordPress默认的站点URL若仍为HTTP,可能引发后续资源加载异常。你可以通过两种方式修改:- 编辑
/srv/www/wpsite/wp-config.php,添加以下代码:define('WP_HOME','https://wpsite.com'); define('WP_SITEURL','https://wpsite.com'); - 通过HTTP访问WordPress后台,进入设置 > 常规,将「WordPress地址(URL)」和「站点地址(URL)」修改为
https://wpsite.com并保存。
- 编辑
验证配置并重启服务
添加配置后,先检查Apache配置语法是否合法:apache2ctl configtest若输出
Syntax OK,则重启Apache服务:systemctl restart apache2
内容的提问来源于stack exchange,提问作者frost
相关产品推荐
相关产品推荐

