2by*_*2by 1 php apache .htaccess ssl https
I am using Cloudflare Flexible SSL on a website I programmed myself (no framework or CMS). Everything is working and now I want to use HTTPS on the whole site. I use PHP on Apache web server.
I am wondering how I should approach this and redirect all users to HTTPS.
Currently my .htaccess is set up like this:
# Force www.
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)
I have seen this answer on stackoverflow, but it points to another answer which is not as simple and doesn't recommend rewrites.
This is the Apache recommendation:
<VirtualHost *:80>
ServerName www.example.com
Redirect "/" "https://www.example.com/"
</VirtualHost >
<VirtualHost *:443>
ServerName www.example.com
# ... SSL configuration goes here
</VirtualHost >
Run Code Online (Sandbox Code Playgroud)
But frankly, I have no clue what this means.
How can I redirect users to HTTPS and www? Anything I should be aware of, when switching to HTTPS?
最好的方法是使用 Cloudflare。
在 Cloudflare 网站上:
或者您可以在您的.htaccess
:
RewriteEngine On
# Redirect with www
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC,OR]
# Redirect to https
# With Cloudflare:
RewriteCond %{HTTP:CF-Visitor} '"scheme":"http"'
# Without Cloudflare:
# RewriteCond %{HTTPS} off
RewriteRule ^ https://www.example.com%{REQUEST_URI} [NE,R=301,L]
Run Code Online (Sandbox Code Playgroud)