在SUSE Linux Enterprise上使用SSL和mod_jk的Apache2 | Apache始终禁用SSL

我已经使用YaST在SUSE Linux Enterprise Server 11(x86_64)(patchlevel 1)上安装了Apache2(启用了mod_ssl)。 一旦安装,我testing是否一切正常到目前为止。 SSL也正常工作。

只是“apache2ctl开始”就足以使一切工作。

然后,我安装了mod_jk并应用了以下configuration更改以使其工作。

/ etc / sysconfig / apache2(添加了JK模块)

APACHE_MODULES="... ... ... ... ...jk" 

/etc/apache2/httpd.conf(包含mod_jk.conf)

 Include /etc/apache2/mod_jk.conf 

/etc/apache2/mod_jk.conf(新文件)

 JkLogFile /var/log/apache2/mod_jk.log JkWorkersFile /etc/apache2/mod_jk/workers.properties JkShmFile /etc/apache2/mod_jk/mod_jk.shm # Set the jk log level [debug/error/info] JkLogLevel info # Select the timestamp log format JkLogStampFormat "[%a %b %d %H:%M:%S %Y] " 

还创build了mod_jk.log和mod_jk.shm文件。

/etc/apache2/mod_jk/workers.properties(新文件)

 worker.list=jira worker.jira.type=ajp13 worker.jira.host=127.0.0.1 worker.jira.port=8009 

一切完成后,我使用以下命令重新启动Apache,

 apache2ctl restart 

然后我观察到SSL不起作用。 当用telnet检查时,我发现端口443没有打开。

在listen.conf中,如果我指定端口443绕过'IfDefine'和'IfModule'的条件,那么SSL工作正常。 这可能是“SSL”标志不传递给Apache。 我没有把这个做成一个持续的改变,因为我认为这可能不是正确的做法。

我检查了/ etc / sysconfig / apache2,看看这个已经被修改了,但是在那里。 尽pipe启用了此标志,但Apache不会从SSL支持开始。

 APACHE_SERVER_FLAGS="SSL" 

最后,我必须使用以下命令启动Apache,

 apache2ctl -D SSL -k start 

而我的问题是,为什么Apache(或apache2ctl)无法启动SSL时,我已经安装并正确configurationmod_jk,并没有其他configuration更改被应用?

我错过了什么?

提前致谢。

– Shaakunthala

从一个朋友得到了这个答案,

使用“rcapache2启动”来启动服务器..然后它会工作。 否则不会考虑在/ etc / sysconfig / apache2上设置SSL标志