Hi I have configured Virtual host on apache with .htaccess authentication with SSL. It's working fine when I typed url https://www.example.com:9004/test.php
but when I typed http://www.example.com:9004/test.php
I am getting this error:
Bad Request
Your browser sent a request that this server could not understand.
Reason: You're speaking plain HTTP to an SSL-enabled server port.
Instead use the HTTPS scheme to access this URL, please.
Hint: https://www.example.com/
My httpd.conf file look like this:
Listen 9004
<VirtualHost *:9004>
ServerAdmin root@localhost
DocumentRoot /mnt/work/httpd
<Directory "/mnt/work/httpd">
Options FollowSymLinks
AllowOverride AuthConfig
</Directory>
SSLEngine On
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP
SSLCertificateKeyFile /mnt/work/httpd/www.example.com.key
SSLCertificateFile /mnt/work/httpd/www.example.com.crt
#RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://www.example.com:9006%{REQUEST_URI}
ServerName www.example.com
ErrorLog "/mnt/work/log/error_log"
CustomLog "/mnt/work/log/access_log" combined
</VirtualHost>
And my /etc/httpd/conf.d/ssl.conf file is:
LoadModule ssl_module modules/mod_ssl.so
#
# When we also provide SSL we have to listen to the
# the HTTPS port in addition.
#
Listen 9006
And Mmy .htaccess file is:
AuthType Digest
AuthName "Protected"
AuthDigestProvider file
AuthGroupFile /dev/null
AuthUserFile /mnt/work/httpd/digest_auth
Require user johan
What should I do so that when I hit http:/www.example.com:9004/test.php
it will automatically redirect to https://www.example.com:9004/test.php
.