I am sure that this error can occur when apache ssl virtualhost directive doesn't contain configuration on SSLCertificateFile. However, in my situation I am pretty sure I have it configured correctly as shown in my httpd-ssl.conf below:
LoadModule ssl_module modules/mod_ssl.so
Listen 443
<VirtualHost *:443>
DocumentRoot "/home/web/htdocs"
ServerName mydomain.com
ServerAdmin you@example.com
ErrorLog "/usr/local/apache2/logs/error_log"
TransferLog "/usr/local/apache2/logs/access_log"
SSLEngine on
SSLCertificateFile "/etc/pki/tls/certs/my.crt"
SSLCertificateKeyFile "/etc/pki/tls/private/my.key"
SSLCertificateChainFile "/etc/pki/tls/certs/intermediate.pem"
SSLCACertificateFile "/etc/pki/tls/certs/ca.pem"
</VirtualHost>
The certificate is properly configured with 644 permission while the private key with 600.
Did I miss anything?