我想配置我的家庭服务器接受端口SSL连接443配置Apache SSL,然后重定向到Tomcat mod_jk的
我已经www.mydomain.com域,我刚刚联系的Apache2和Tomcat,使用mod_jk,现在我想接受来自网络的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" />
有了这个配置配给我正确冲浪MyTomcatAppName当我访问http:// www.mydomain.com或http:// domain.com ... 我现在的问题是访问同一个网站使用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
我敢肯定,这是因为我错过了在虚拟主机标签的东西....那么,怎样才能解决呢?
你能给我看一个示例代码吗? – piojo
如果您访问https:// www.mydomain.com /时会得到HTTP响应(禁止),HTTPS已经在运行,所以您必须以某种方式配置了['SSL *'](http: //httpd.apache.org/docs/2.2/mod/mod_ssl.html)选项。尝试将虚拟主机设置到它们所在的位置(或者如果虚拟主机不存在,则使用'VirtualHost *:443'创建一个虚拟主机)并将'Jk *'选项放在那里。 – Bruno
我忘了在VirtualHost中添加证书和私钥,你帮我在其他帖子上创建它们,所以现在我总结了我的答案中的步骤...非常感谢你... – piojo