Related Posts

Ultimate Addons for Elementor causing infinite loading in Elementor
Disable auto-update Email Notifications causing critical errors

Apache Domain Configuration

				
					nano /etc/apache2/sites-available/[domain.com].conf
				
			
				
					<VirtualHost *:80>
    ServerName [domain.com]
    ServerAlias www.[domain.com]
    DocumentRoot /var/www/[user]/[domain.com]
    ErrorLog /var/log/apache2/[domain.com]-error.log
    CustomLog /var/log/apache2/[domain.com]-access.log combined
    <Directory /var/www/[user]/[domain.com]>
        AllowOverride All
        Require all granted
    </Directory>
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^www\.[domain]\[.com]$ [NC]
        RewriteRule ^ http://[domain]\[.com]%{REQUEST_URI} [R=301,L]
    </IfModule>
RewriteCond %{SERVER_NAME} =[domain.com] [OR]
RewriteCond %{SERVER_NAME} =www.[domain.com]
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

				
			
				
					nano /etc/apache2/sites-available/[domain.com]-ssl.conf
				
			
				
					<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerName [domain.com]
    ServerAlias www.[domain.com]
    DocumentRoot /var/www/[user]/[domain.com]
    ErrorLog /var/log/apache2/[domain.com]-error.log
    CustomLog /var/log/apache2/[domain.com]-access.log combined
    <Directory /var/www/[user]/[domain.com]>
        AllowOverride All
        Require all granted
    </Directory>
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^www\.[domain]\[.com]$ [NC]
        RewriteRule ^ http://[domain]\[.com]%{REQUEST_URI} [R=301,L]
    </IfModule>

SSLCertificateFile /etc/cloudflare/[domain.com].pem
SSLCertificateKeyFile /etc/cloudflare/[domain.com].key

</VirtualHost>
</IfModule>

				
			
				
					nano /etc/cloudflare/[domain.com].pem
				
			
				
					nano /etc/cloudflare/[domain.com].key
				
			
				
					a2ensite [domain.com]-ssl [domain.com]
				
			
				
					service apache2 reload
				
			

[domain.com]-le-ssl.conf (Let's Encrypt SSL)

				
					<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerName [domain.com]
    ServerAlias www.[domain.com]
    DocumentRoot /var/www/[user]/[domain.com]
    ErrorLog /var/log/apache2/[domain.com]-error.log
    CustomLog /var/log/apache2/[domain.com]-access.log combined
    <Directory /var/www/[user]/[domain.com]>
        AllowOverride All
        Require all granted
    </Directory>
    <IfModule mod_rewrite.c>
        # Strips out www from the domain
        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^www\.[domain]\[.com]$ [NC]
        RewriteRule ^ http://[domain]\[.com]%{REQUEST_URI} [R=301,L]
    </IfModule>

Include /etc/letsencrypt/options-ssl-apache.conf

SSLCertificateFile /etc/letsencrypt/live/[domain.com]/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/[domain.com]/privkey.pem

# SSLCertificateFile /etc/cloudflare/[domain].key
# SSLCertificateKeyFile /etc/cloudflare/[domain].pem

</VirtualHost>
</IfModule>