I'm running an Ubuntu 14.04 server with Apache2 v2.4.7.
Recently our site was getting errors from Chrome saying we needed to update our certs. I just completed that earlier this week, updating the SSL Certs and then restarting Apache. A couple of days layer, my client came back and mentioned that certain images and files weren't accessible anymore through their reporting server. The reporting server was using HTTPS to get to the images and files.
My conf file has this, which hasn't changed since I inherited this server:
<VirtualHost *:80>
ServerName abc.example.com
DocumentRoot /home/deployer/html/_abc/public
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} !^/files/
RewriteCond %{REQUEST_URI} !^/images/checksheets/
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
</VirtualHost>
<VirtualHost *:443>
ServerName abc.example.com
DocumentRoot /home/deployer/html/_abc/public
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite ECD....C3-SHA:!DSS
SSLHonorCipherOrder on
SSLCompression off
SSLCertificateFile /etc/ssl/ssl_certificate.crt
SSLCertificateKeyFile /etc/ssl/abc_staging.key
SSLCertificateChainFile /etc/ssl/IntermediateCA.crt
# HSTS (mod_headers is required) (15768000 seconds = 6 months)
Header always set Strict-Transport-Security "max-age=15768000"
<Directory /home/deployer/html/_abc/public>
AllowOverride all
Options FollowSymLinks
# -MultiViews
# Order allow,deny
Require all granted
</Directory>
The only thing I've done on the server has literally been to update the ssl_certificate and IntermediateCAs and restart Apache, so I'm not sure what happened. The last time the SSL Cert was updated was probably about a year ago, and the reporting server's way of grabbing images/files hasn't changed. I also restart Apache fairly frequently and this had never been an issue previously.
On a whim, my client created a new report using http
instead of https
, and that seemed to work perfectly OK.
My question really is, what could have changed to cause the server to suddenly no longer accept https
connections for images/files?
EDIT: These are only GET requests (there are no POST/DELETE actions).
Also, navigating to the image (or file) as https://abc.example.com/images/path/to/file.jpg
with HTTPS completely works fine. But when the reporting server uses that same link, a blank page gets displayed.
Apache access logs will show the above link as a hit when navigating directly, but when the reporting server uses it, and I navigate to the report, Apache access logs show nothing at all.