httpd-vhosts.conf SSL 配置

httpd-vhosts.conf SSL 配置

我的 vhost 配置应该放在哪里SSL

/opt/lamp/etc/extra/httpd-vhosts.confhttpd配置文件

目前,我的 SSL 配置位于httpd-vhosts.conf

<VirtualHost *:1223>
DocumentRoot "/opt/lampp/htdocs/api_tk_b/public"
DirectoryIndex index.php
ServerName api-b.mydomain.com
ServerAlias api-b.mydomain.com
ServerAdmin *.mydomain.com
#SSLEngine on
#SSLCertificateFile "/opt/lampp/htdocs/crt/gd.crt"
#SSLCertificateKeyFile "/opt/lampp/htdocs/crt/mydomain.key"
#SSLCACertificateFile "/opt/lampp/htdocs/crt/gd-bundle.crt"
<Directory "/opt/lampp/htdocs/api_tk_b/public">
    Options All
    AllowOverride All
    Require all granted
</Directory>
ErrorLog "logs/api_b-error_log"
CustomLog "logs/api_b-access_log" common
</VirtualHost>

但它不起作用,我不认为错误出在我的身上crtkey也许bundle在执行此操作之前我需要先做些什么?

我在用着去吧爸爸截至目前

我的更新

这是我目前的更新。

首先,为什么*:1223因为我在服务器上有多个项目并使用子域,但这些项目没有使用 ssl,这就是为什么我尝试使用 1223 来使其工作。

api-b.mydomain.com

如果我评论SSL configuration

当我注释掉 SSL 配置时

apache 无法重新启动。

它一直在运行,但是,当我尝试在网络上访问时

使用这个链接:https://api-b.mydomain.com网络说

This site can’t be reached api-b.mydomain.com refused to connect.

笔记:

我的密钥文件夹存在,并且我的密钥文件不为空。

此配置代码可以运行,Windows但不可以在,linux我需要做任何配置吗?

如果我访问 error.log,它不是空的,但是与我的 api 相关的日志中没有发生相关问题,并且 api-b-error.log 也是空的

/opt/lampp/etc/extra/httpd-vhosts.conf api-a.mydomain.com

答案1

此 VirtualHost 仅监听端口 80。您需要将其更改为 443:

<VirtualHost *:443>

不要忘记Listen 443很可能位于 Apache 配置中其他地方的指令。

要清楚:您需要两个 VirtualHost 指令。一个用于端口 80,一个用于端口 443。443 必须是唯一包含 SSL 指令的端口。其余的可以相同(或者 80 可以只包含到 443 的重定向)。

相关内容