【发布时间】:2020-02-06 22:27:22
【问题描述】:
我在 CentOS 7 上运行 apache。 我在 /etc/httpd/conf.d 中有 2 个配置文件:
- A10-my_site_dev.conf
- A10-my_site_test.conf
由于它们相似,我只给你看其中一个文件:
<VirtualHost *:443>
ErrorLog "logs/my_site_test.log"
SSLCertificateFile /etc/ssl/host/host.crt
SSLCertificateKeyFile /etc/ssl/host/host.key
Alias /my-site/test/static /var/www/my_site_test/static/
<Directory /var/www/my_site_test/static>
Require all granted
</Directory>
WSGIScriptAlias /my-site/test /var/www/my_site_test/app/wsgi.py
<Directory /var/www/my_site_test>
Require all granted
</Directory>
</VirtualHost>
目前,A10-my_site_test.conf 中的 VirtualHost 被忽略。如果我去https://my-server.com/my-site/test,我有一个404,但https://my-server.com/my-site/dev 工作正常。 如果我删除 A10-my_site_dev.conf 并重新启动 apache,https://my-server.com/my-site/test 可以工作。 我知道它只需要第一个 VirtualHost apache 找到。
我感觉我的 ssl.conf 中的 VirtualHost 也被忽略了,因为如果我将 SSLCertificateFile 和 SSLCertificateKeyFile 移动到 ssl.conf,我会遇到以下错误:
我尝试不使用 VirtualHost,在这种情况下一切正常。我认为除了第一个之外,所有的 VirtualHost 都被忽略了。
我在使用其他端口(例如 80)时遇到了同样的问题。
另一点:我读到我应该有一个 ServerName。但是我的所有环境都有相同的 ServerName。我尝试将诸如“my_site_test”之类的随机内容作为 ServerName,但我得到了 404。
如何配置 apache 以使我的 2 个文件正常工作?
【问题讨论】:
标签: apache ssl configuration virtualhost