我正在尝试将我的家庭服务器配置为接受端口 443 上的 SSL 连接。
我有 www.mydomain.com 域,我刚刚使用 mod_jk 链接了 Apache2 和 Tomcat,现在我也希望接受来自网络的 https 请求。
这是我的配置:
httpd.conf
<IfModule mod_jk.c>
JKWorkersFile /etc/apache2/workers.properties
JkShmFile /var/log/apache2/mod_jk.shm
JKLogFile /var/log/apache2/mod_jk.log
JkLogLevel debug
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
</IfModule>
<VirtualHost *:80>
DocumentRoot "/Library/ApacheTomcat/apache-tomcat-6.0.33/webapps/MyTomcatAppName"
ServerName www.mydomain.com
ErrorLog "/private/var/log/apache2/www.mydomain.com-error_log"
CustomLog "/private/var/log/apache2/www.mydomain.com-access_log" common
JkMountCopy On
JkMount /* ajp13
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Library/ApacheTomcat/apache-tomcat-6.0.33/webapps/MyTomcatAppName"
ServerName mydomain.com
ErrorLog "/private/var/log/apache2/mydomain.com-error_log"
CustomLog "/private/var/log/apache2/mydomaino.com-access_log" common
JkMountCopy On
JkMount /* ajp13
</VirtualHost>
然后这是我的 Worker.properties 文件:
worker.list=ajp13
worker.ajp13.type=ajp13
worker.ajp13.host=localhost
worker.ajp13.port=8009
这是我的 server.xml:
<Host name="localhost" appBase="/Library/ApacheTomcat/apache-tomcat-6.0.33/webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="/Library/ApacheTomcat/apache-tomcat-6.0.33/webapps/MyTomcatAppName" />
使用此配置,当我访问 http://www.mydomain.com 或 http://domain.com 时,我可以正确浏览 MyTomcatAppName ...我现在的问题是使用 https 连接访问同一个网站,所以 https://www .mydomain.com 或 https://domain.com。我还在我的 Mac Mini 服务器 (Lion osx) 上安装了 GoDaddy 证书,所以如果我输入 https://www.mydomain.com(或 https://domain.com),浏览器会正确通知我存在“mydomain.com”的证书,但它也说:
Forbidden
You don't have permission to access / on this server.
Apache/2.2.20 (Unix) mod_ssl/2.2.20 OpenSSL/0.9.8r DAV/2 mod_jk/1.2.30 Server at mydomain.com Port 443
我确定这是因为我错过了虚拟主机标签中的某些内容....那么我该如何解决呢?