Linux – Apache HTTP Not Working When SSL Enabled

apache-2.2linuxssl

I've got a very bizarre problem in that after enabling SSL support in Apache I'm only able to access my site via SSL and not through http as well.

I can confirm that Apache is definitely listening on both ports 80 and 443 (accdording to netstat). Additionally the Apache access logs are showing the requests – it's just that going in through http results in a timeout and I'm never actually able to reach the content. Like I said going through https works.

Here is my httpd.conf:
http://pastebin.com/kG2dPjJ2

and here is my httpd-ssl.conf:
http://pastebin.com/thqvjgGJ

Can anyone spot any issues with those configurations? or Have any suggestion at all?

I've searched and searched but there appear to be very few people who have experienced the same.

Also worth mentioning that I did a comparision between those configurations and those of a working set up and I couldn't spot anything.

Best Answer

You are running two separate httpd instances, which are both trying to use the same logfiles. That means that one of them will be unable to write to the file, and that instance will be hanging.

If you want to use the same file for both of them, you should run them in the same instance, using VirtualHost to separate SSL from non-SSL. Otherwise, use separate log files.

EDIT

Also, your httpd.conf for port 80 contains the line:

Include /storage/.xbmc/userdata/addon_data/service.web.lamp/srvroot/conf/extra/httpd-ssl.conf

This means that you're first doing most of the things in your httpd.conf up to that Include-line. Then you're doing all of the things in httpd-ssl.conf, and after that you're doing all the things from your httpd.conf that are below that Include-line. This is very unlikely to be what you want.