Переадресация работает только с корня сайта.
httpd.conf
<VirtualHost *:80>
DocumentRoot /var/www/html/example.com
ServerName example.com
Redirect / https://example.com
</VirtualHost>
<VirtualHost *:443>
DocumentRoot /var/www/html/example.com
ServerName example.com
SSLEngine on
# SSLRequireSSL
# SSLVerifyClient require
SSLCACertificateFile /usr/local/ssl/crt/comodo.crt
#ServerAlias www.example.com
<Directory "/var/www/html/example.com">
allow from all
Options None
Require all granted
</Directory>
ErrorLog /var/www/html/example.com/error.log
php_admin_flag register_globals 1
php_admin_value max_execution_time 60
php_admin_value upload_max_filesize 10M
Include /etc/letsencrypt/options-ssl-apache.conf
ServerAlias www.example.com
SSLCertificateFile /etc/letsencrypt/live/example.com-0001/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com-0001/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com-0001/chain.pem
</VirtualHost>
.htaccess
ErrorDocument 403 /403
# Disable magic quotes
php_flag magic_quotes_gpc 0
php_flag magic_quotes_runtime 0
# Turn on URL rewriting
RewriteEngine On
Options -Indexes
Options +FollowSymLinks
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
# Installation directory
RewriteBase /
# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Rewrite all other URLs to index.php/URL
RewriteRule .* index.php?q=$0
AddDefaultCharset UTF-8
<Files config.php>
deny from all
</Files>
<Files M*.php>
deny from all
</Files>
<Files C*.php>
deny from all
</Files>
<Files v*.php>
deny from all
</Files>
AddType application/octet-stream .txt
AddType application/octet-stream .exe
AddType application/octet-stream .npk
AddType application/octet-stream .rsc
AddType application/octet-stream .xls
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}