-
-
Save iheartmedia-matt/253ccb6183fdeaa5619f615f2cb5a58b to your computer and use it in GitHub Desktop.
| <ifModule mod_rewrite.c> | |
| ####################################################################### | |
| # GENERAL # | |
| ####################################################################### | |
| # Make apache follow sym links to files | |
| Options +FollowSymLinks | |
| # If somebody opens a folder, hide all files from the resulting folder list | |
| IndexIgnore */* | |
| ####################################################################### | |
| # REWRITING # | |
| ####################################################################### | |
| # Enable rewriting | |
| RewriteEngine On | |
| # If its not HTTPS | |
| RewriteCond %{HTTPS} off | |
| # Comment out the RewriteCond above, and uncomment the RewriteCond below if you're using a load balancer (e.g. CloudFlare) for SSL | |
| # RewriteCond %{HTTP:X-Forwarded-Proto} !https | |
| # Redirect to the same URL with https://, ignoring all further rules if this one is in effect | |
| RewriteRule ^(.*) https://%{HTTP_HOST}/$1 [R,L] | |
| # If we get to here, it means we are on https:// | |
| # If the file with the specified name in the browser doesn't exist | |
| RewriteCond %{REQUEST_FILENAME} !-f | |
| # and the directory with the specified name in the browser doesn't exist | |
| RewriteCond %{REQUEST_FILENAME} !-d | |
| # and we are not opening the root already (otherwise we get a redirect loop) | |
| RewriteCond %{REQUEST_FILENAME} !\/$ | |
| # Rewrite all requests to the root | |
| RewriteRule ^(.*) / | |
| </ifModule> | |
| <IfModule mod_headers.c> | |
| # Do not cache sw.js, required for offline-first updates. | |
| <FilesMatch "sw\.js$"> | |
| Header set Cache-Control "private, no-cache, no-store, proxy-revalidate, no-transform" | |
| Header set Pragma "no-cache" | |
| </FilesMatch> | |
| </IfModule> |
Thank you! Just spent the past 4 hours trying to get this!!! Beautiful!
Just one question... How can I redirect a user from www to without the www, so from www.sample.com to https://sample.com?
Thank you very much! I spent a lot of time to find the answer and it's here !
Thank you man
Saved me, thanks!!
This is amazing! Saved me so much time!
I would also like to remove the "www" from urls and redirect to the non-www counterpart. I'm pretty green with .htaccess, so I'm sure I'm doing something wrong. I tried this and it's not working:
...
# Enable rewriting
RewriteEngine On
#www to non
RewriteCond %{HTTP_HOST} ^www\.(([a-z0-9_]+\.)?domain\.com)$ [NC]
RewriteRule ^(.+?)/?$ http://%1/$1/ [R=301,L]
# If its not HTTPS
RewriteCond %{HTTPS} off
...
Thanks. You are so good
For people that serve the react app in a subdirectory, here is the solution:
Comment out or remove out these two lines bellow
# Rewrite all requests to the root
# RewriteRule ^(.*) /
Add this rewrite rule to point to index.html
# Rewrite all requests to the index.html
RewriteRule ^ index.html [QSA,L]
I have an "ERR_TOO_MANY_REDIRECTS" error with all the solutions found, has anyone ever had this problem?
Thank you very much!!! save my day! and learn a lot from this!!!