apache - 同一个 httpd.conf 中的多个域
问题描述
我有两个指向同一个 IP 地址的域名。其中一个域在服务器本地托管,另一个只是对另一个域的转发(我们将 Confluence 迁移到了云端,但需要保持旧链接处于活动状态)
我的 httpd.conf 看起来有点像这样(希望删除了很多不相关的信息)。
Listen 80
Listen 443
NameVirtualHost *:80
NameVirtualHost *:443
<VirtualHost *:80>
ServerName esd.domain.com
Redirect / https://esd.domain.com/
</VirtualHost>
<VirtualHost *:443>
ServerName esd.domain.com
DocumentRoot "C:/Apache/htdocs"
SSLEngine On
SSLCertificateFile "/Apache/conf/esd.domain.com.crt"
SSLCertificateKeyFile "/Apache/conf/esd.domain.com.key2"
</VirtualHost>
<VirtualHost *:80>
ServerName documentation.domain.com
Redirect "/display/" "https://domain.atlassian.net/wiki/display/"
Redirect "/" "https://domain.atlassian.net/"
</VirtualHost>
<VirtualHost *:443>
ServerName documentation.domain.com
Redirect "/display/" "https://domain.atlassian.net/wiki/display/"
Redirect "/" "https://domain.atlassian.net/"
</VirtualHost>
这对 esd.domain.com 非常有效,但 documentation.domain.com 也以 esd.domain.com 结尾。
请问有人对我应该如何做有任何指示吗?我是继承了这个系统并且在苦苦挣扎的httpd新手!提前致谢。
此页面似乎表明它是可能的:https ://docs.jelastic.com/name-based-apache-virtual-host 与我的唯一区别是第二个域是重定向。
解决方案
我发现问题不在于 .conf 文件,而在于
httpd -k restart
由于权限问题,实际上并没有重新启动。它在 .conf 文件中报告错误,因此给人的印象是它正在重新启动,而实际上它无法关闭正在运行的实例。最后我在日志文件中发现了服务无法停止的小错误,并整理了权限。现在上面的 .conf 文件很有魅力。
推荐阅读
- google-apps-script - TypeError:无法从未定义中读取属性“范围”。(第 3 行,文件“代码”)
- woocommerce - 从 woocommerce '添加到购物车' 按钮中删除 rel="nofollow"
- azure - How to login to docker azure registry from Jenkins pipeline using 'withCredential' returns TTY error
- django - Where is the Django migrations folder?
- c++ - Sort char array using sort function c++
- python - 网址错误:
,为什么? - android-studio - Canary build of the android emulator for AMD processor showing error
- html - 从输入类型按钮值中删除灰色边框
- php - 从 SQLServer 数据库向 PHP 填充下拉列表添加动态选项
- java - Java Spark 上的按键关联