htaccess file

Avatar
  • Answered
pawsandclawspetsupply.com Please have a look at this Open Cart article: " Avoid Duplicate Content There are two ways to access your OpenCart site, one is http://YourOpencartSore.com and the other is http://www.YourOpencartSore.com. It shows search engines that you have 2 sites with the same content. And this will kill your site on SERP (search engines’ result pages). What is the solution? All of your links MUST go to one place! By default, OpenCart doesn’t handle this redirect for you. You have to do that manually. But how? Simple, you just need to edit your .htaccess file which can be found in the same folder that you installed OpenCart on your server (. Here is what the code looks like: # Begin Redirect 301 RewriteEngine On RewriteCond %{HTTP_HOST} !^kulerthemes\.com [NC] RewriteRule (.*) http://kulerthemes.com/$1 [R=301,L] # BEGIN OpenCart RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END OpenCart That is all you need to redirect your OpenCart site from the “www version” to the “non-www version”. If you want to redirect from the non-www to the www, then swap lines 3 and 4 with this: RewriteCond %{HTTP_HOST} !^www\.kulerthemes\.com [NC] RewriteRule ^(.*)$ http://www. kulerthemes.com/$1 [L,R=301]" I want to do this but I is not obvious to me how by the way the author wrote this. Here is what my .htaccess file looks like now: # 1.To use URL Alias you need to be running apache with mod_rewrite enabled. # 2. In your opencart directory rename htaccess.txt to .htaccess. # For any support issues please visit: http://www.opencart.com Options +FollowSymlinks # Prevent Directoy listing Options -Indexes # Prevent Direct Access to files Order deny,allow Deny from all # SEO URL Settings RewriteEngine On # If your opencart installation does not run on the main web folder make sure you folder it does run in ie. / becomes /shop/ RewriteBase / RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L] RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css) RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA] ### Additional Settings that may need to be enabled for some servers ### Uncomment the commands by removing the # sign in front of it. ### If you get an "Internal Server Error 500" after enabling any of the following settings, restore the # as this means your host doesn't allow that. # 1. If your cart only allows you to add one item at a time, it is possible register_globals is on. This may work to disable it: # php_flag register_globals off # 2. If your cart has magic quotes enabled, This may work to disable it: # php_flag magic_quotes_gpc Off # 3. Set max upload file size. Most hosts will limit this and not allow it to be overridden but you can try # php_value upload_max_filesize 999M # 4. set max post size. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields # php_value post_max_size 999M # 5. set max time script can take. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields # php_value max_execution_time 200 # 6. set max time for input to be recieved. Uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields # php_value max_input_time 200 # 7. disable open_basedir limitations # php_admin_value open_basedir none RewriteCond %{HTTP_HOST} ^heartlandpetbeds\.com$ [OR] RewriteCond %{HTTP_HOST} ^www\.heartlandpetbeds\.com$ RewriteRule ^/?$ "http\:\/\/pawsandclawspetsupply\.com" [R=301,L]
Avatar
JacobIMH
Hello Simonb, and thank you for your question. It looks like if you wanted to force the non-www version of your site you'd need to add this to the very bottom of your .htaccess file:

RewriteCond %{HTTP_HOST} !^pawsandclawspetsupply\.com [NC] RewriteRule (.*) http://pawsandclawspetsupply.com/$1 [R=301,L]

If you wanted to force the www version:

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

Please let us know if you had any further questions at all. - Jacob