First is that in many places I had the wrong statement (corrected below in red).

Quote Originally Posted by mc12345678 View Post
What I'm saying is that for the arrangement that you have, the .htaccess should look like below.

Reason: between rewriterules each rewritecond is evaluated. If a rewritecond is false, then the rewriterule is not performed. Because yours has/had a check for the host_name being maah.no, then that evaluates as false every time because of the previous rewrite to make all http_host values to be madasahatter. Therefore the rewriterule never executes. In the case of trying to access the admin directory and although that issue was for another reason, the rewritecond is also not met and not performed which is by design. Assuming that there is no data currently to perform the rewrite (brand new install without transferring the previous database that had this plugin installed) then the issue would not have been identified until the first rewrite was entered/tested.

I'm somewhat assuming though that you did rebuild your site using your previous database and unless you disabled this plugin before upgrading the ceon tables are still present and technically the rewrites should be happening now as we speak (provided that the .htaccess directs the rewrite).

Code:
#
# @copyright Copyright 2003-2010 Zen Cart Development Team
# @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0
# @version $Id: .htaccess 18695 2011-05-04 05:24:19Z drbyte $
#
# This is used with Apache WebServers
#
# The following blocks direct HTTP requests to all filetypes in this directory recursively, except certain approved exceptions
# It also prevents the ability of any scripts to run. No type of script, be it PHP, PERL or whatever, can normally be executed if ExecCGI is disabled.
# Will also prevent people from seeing what is in the dir. and any sub-directories
#
# For this to work, you must include either 'All' or at least: 'Limit' and 'Indexes' parameters to the AllowOverride configuration in your apache/conf/httpd.conf file.
# Additionally, if you want the added protection offered by the OPTIONS directive below, you'll need to add 'Options' to the AllowOverride list, if 'All' is not specified. 
# Example:
#<Directory "/usr/local/apache/htdocs">
#  AllowOverride Limit Options Indexes
#</Directory>
###############################


##ROOT##

ExpiresActive On
ExpiresByType text/css "access plus 500 days"
ExpiresByType application/javascript "access plus 500 days"

<Files stylesheet.css>
ExpiresByType text/css "access plus 350 days"
</Files>

 <FilesMatch \.(swf)$>
  ExpiresDefault "access plus 700 days"
 </FilesMatch>

 <FilesMatch \.(svg)$>
  ExpiresDefault "access plus 3000 days"
 </FilesMatch>

ExpiresByType image/gif "access plus 1500 days"

ExpiresByType image/jpg "access plus 1500 days"

ExpiresByType image/jpeg "access plus 1500 days"

ExpiresByType image/png "access plus 1500 days"

ExpiresByType image/bmp "access plus 1500 days"

# 48 weeks
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf|JPG|woff)$">
Header set Cache-Control "max-age=29030400, public"
</FilesMatch>

<files *>
order allow,deny
deny from 80.212.29.94
deny from 74.50.57.39
deny from 24.189.60.120
deny from 84.17.15.2
deny from 211.167.110.2
deny from 91.201.64.26
deny from 65.208.189
deny from 65.211.195
#deny from 195.1.61
allow from all
</files>

RewriteEngine On

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


# Don't rewrite any URIs ending with a file extension (ending with .[xxxxx])
RewriteCond %{REQUEST_URI} !\.[a-z]{2,5}$ [NC]
# Don't rewrite admin directory
RewriteCond %{REQUEST_URI} !^/MyAdminFolder [NC]
# Don't rewrite editors directory
RewriteCond %{REQUEST_URI} !^/editors [NC]
# Don't rewrite cPanel directories
RewriteCond %{REQUEST_URI} !/cpanel [NC]
RewriteCond %{REQUEST_URI} !/frontend [NC]
# Don't rewrite ajax directory
RewriteCond %{REQUEST_URI} !^/ajax/ [NC]
# Don't rewrite bmz_cache directory
RewriteCond %{REQUEST_URI} !^/bmz_cache/ [NC]
# Handle all other URIs using Zen Cart (index.php)
# RewriteRule .* index.php?%{QUERY_STRING} [L]
RewriteRule ^/?$ "http\:\/\/madasahatter\.no\/" [R=301,L]
Quote Originally Posted by panservolvo View Post
Thanks for helping out. Your rewrite part didnt work, probably because of the # before the .* index.php?

I have changed my rewrite part to this and its working.
Any comments?

Code:
RewriteEngine On

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


## BEGIN CEON URI MAPPING REWRITE RULE

# Don't rewrite any URIs ending with a file extension (ending with .[xxxxx])
RewriteCond %{REQUEST_URI} !\.[a-z]{2,5}$ [NC]
# Don't rewrite any URIs for some, popular specific file format extensions,
#   which are not covered by main file extension condition above
RewriteCond %{REQUEST_URI} !\.(mp3|mp4|h264)$ [NC]
# Don't rewrite any URIs for some specific file format extensions,
#   which are not covered by main file extension condition above
#   Uncomment the following line to apply this condition! (Remove the # at the start of the next line)
#RewriteCond %{REQUEST_URI} !\.(3gp|3g2|h261|h263|mj2|mjp2|mp4v|mpg4|m1v|m2v|m4u|f4v|m4v|3dml)$ [NC]
# Don't rewrite admin directory
RewriteCond %{REQUEST_URI} !^/SuperSecretAdminPath [NC]
# Don't rewrite editors directory
RewriteCond %{REQUEST_URI} !^/editors/ [NC]
# Don't rewrite logs directory
RewriteCond %{REQUEST_URI} !^/logs/ [NC]
# Don't rewrite bmz_cache directory
RewriteCond %{REQUEST_URI} !^/bmz_cache/ [NC]
# Don't rewrite min directory
RewriteCond %{REQUEST_URI} !^/min/ [NC]
# Handle all other URIs using Zen Cart (its index.php)
RewriteRule .* index.php [QSA,L]
As to the above new rewrite rule, I do not currently have an answer as I am unable to review an existing functional version to determine if the .htaccess conditions and rules are correct. Suggest though using the admin tool to autogenerate the htaccess rules to validate.