XF 2.2 force on https

PASS

Well-known member
Hi, is there a way to force all the flow on https ?

I use this in my htaccess file. It will redirect non https and/or non www. to https://www.mysite.com

Code:
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
 
Last edited:

Luca_

Member
I use this my htaccess file. It will redirect non https and/or non www. to https://www.mysite.com

Code:
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
I made your change getting this htaccess, everything seems to work.. can it be okay or do I have to change something ?
# Mod_security can interfere with uploading of content such as attachments. If you
# cannot attach files, remove the "#" from the lines below.
#<IfModule mod_security.c>
# SecFilterEngine Off
# SecFilterScanPOST Off
#</IfModule>

ErrorDocument 401 default
ErrorDocument 403 default
ErrorDocument 404 default
ErrorDocument 405 default
ErrorDocument 406 default
ErrorDocument 500 default
ErrorDocument 501 default
ErrorDocument 503 default

<IfModule mod_rewrite.c>
RewriteEngine On

# If you are having problems with the rewrite rules, remove the "#" from the
# line that begins "RewriteBase" below. You will also have to change the path
# of the rewrite to reflect the path to your XenForo installation.
#RewriteBase /xenforo

# This line may be needed to workaround HTTP Basic auth issues when using PHP as a CGI.
#RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt) - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
</IfModule>
 

Tracy Perry

Well-known member
For the moment, it seems to work
As I said, htaccess works in Apache... and will work with LiteSpeed (an Apache alternative), but the file itself will not work with (unless they've changed) OpenLiteSpeed - you have to put them in the settings as it wont' read the file.
It will NOT work with nginx... you have to use something similar to this

Code:
 server {
   listen 80;
   listen [2604:a880:800:a1::a6:9001]:80;
   server_name astrowhat.com  www.astrowhat.com dso.photos www.dso.photos;
   return 302 https://astrowhat.com$request_uri;
 

Nicolas FR

Well-known member
Why man ?
Cloudflare is useful.

With this add-on it's even easier to use it.
 
Top