Question

How to Redirect all HTTP requests to HTTPS? This Query is unique!!!

Hey everyone, I recently have moved to HTTPS version from HTTP. But since then, I am into trouble and problem is not solved. So, my query is, How to redirect user to HTTPS version of site regardless whatever he types. For ex., Let me explain:-

example.com —>>> `https:// www.example.com/

www.example.com —>>> https:// www.example.com/

https:// example.com —>>> https:// www.example.com/

Moreover, If in future I make my mind to move site to https:// example.com instead of https:// www.example.com, then what will be the code for this? Let me give example for this too.

example.com —>>> https:// example.com/

www.example.com —>>> https:// example.com/

https:// www.example.com —>>> https:// example.com/

I have seen that if a user types https:// example.com and I want it to redirect to https:// www.example.com/ then browser give warning about its security before redirecting. Hence, asks for users confirmation. This is bad thing and can destroy site owner image. This should not happen. :D

Please suggest .htaccess code for both types separately. For info, using Apache Web Server. :D


Submit an answer

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Sign In or Sign Up to Answer

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Want to learn more? Join the DigitalOcean Community!

Join our DigitalOcean community of over a million developers for free! Get help and share knowledge in Q&A, subscribe to topics of interest, and get courses and tools that will help you grow as a developer and scale your project or business.

Hi,

This should redirect both www to non-www and http to https:

RewriteEngine On

# https/http www -> https non-www
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

# http non-www -> https non-www
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]

I have seen that if a user types https:// example.com and I want it to redirect to https:// www.example.com/ then browser give warning about its security before redirecting. Hence, asks for users confirmation. This is bad thing and can destroy site owner image. This should not happen. :D

I haven’t seen your SSL certificate, but I’m assuming that it’s valid for example.com only and not www.example.com. Unfortunately, unless you get an SSL certificate that is valid for both www and non-www, visitors will continue to see a warning before redirecting.

This comment has been deleted

This comment has been deleted