Coldfusion 11 REST Service works with HTTP but not HTTPS (404)
My problem has been resolved. I found two separate solutions, which were based on the response from mt0 and from Adobe's Help (https://helpx.adobe.com/coldfusion/installing/configuring-your-system.html).
Solution #1.
Edit /etc/httpd/conf/httpd.conf
I added the following line to my SSL VirtualHost directive:
<VirtualHost 127.0.0.1:443> JKMountFile "/path/to/ColdFusion11/config/wsconfig/1/uriworkermap.properties"
However, this would only work if I changed the local IP address (127.0.0.1) to the server's IP address for both the NameVirtualHost and VirtualHost. (using *:443
did not work)
NameVirtualHost SERVER_IP_HERE:443<VirtualHost SERVER_IP_HERE:443>
While this solved the problem, I did not want to hard-code the server's IP address inside the config files. So I continued researching and found this alternate solution:
Solution #2 (preferred).
Edit /etc/httpd/conf.d/ssl.conf (leaving the httpd.conf file in its original state)
I added the following line to my SSL VirtualHost directive, and restarted Apache:
<VirtualHost _default_:443> JKMountFile "/path/to/ColdFusion11/config/wsconfig/1/uriworkermap.properties"
This solved my problem.
Thank you everyone for your assistance!
Your virtual host does not know anything about ColdFusion. If you look in the /etc/httpd/conf/mod_jk.conf
file, it will have a line that looks like:
JKMountFile "/path/to/ColdFusion11/config/wsconfig/1/uriworkermap.properties"
Which is being called for the HTTP service (via the Include "/etc/httpd/conf/mod_jk.conf"
of the config file) but not for the HTTPS service.
All you need to do is copy this line into your httpd.conf
file within the Virtual Host declaration; like this:
<VirtualHost 127.0.0.1:443> ServerName localhost DocumentRoot /web/webapps/ SSLEngine on SSLCertificateFile /etc/pki/tls/certs/localhost.crt SSLCertificateKeyFile /etc/pki/tls/private/localhost.key SSLProtocol +SSLv3 +TLSv1 SSLCipherSuite RSA:!EXP:!NULL:+HIGH:-MEDIUM:-LOW ErrorLog logs/cfadmin.ssl.error.log CustomLog logs/cfadmin.ssl.access.log common JKMountFile "/path/to/ColdFusion11/config/wsconfig/1/uriworkermap.properties"</VirtualHost>
Then the virtual host will know where to find the services.