2

I set up a maintenance page that I could enable through an htaccess file. The html file is located in a folder called "maintenance".

The html file has some images in it. However, visitors to the page see no images, even though I added a RewriteCond line to (theoretically) allow them.

If I try to visit the URL of an image file in the browser directly, it redirects to the maintenance.htm page. I do not want image files to be redirected.

Am I missing something?

#RewriteCond %{REMOTE_ADDR} !^127.0.0.1$
#RewriteCond %{REMOTE_ADDR} !^111.111.111.111$
RewriteCond %{REQUEST_URI} !/maintenance/maintenance\.htm$ [NC]
RewriteCond %{REQUEST_URI} !\.(jpg|jpeg|png|gif|css|ico)$ [NC]
RewriteRule ^(.*)$ /maintenance/maintenance.htm [R=302,L]

1 Answer 1

2

I haven't tested but here is some suggestions for you to try :

  1. Put an other .htaccess in the /maintenance/ folder with a RewriteEngine Off to disable the redirection of images once in this folder.

  2. Make a sub-domain for your maintenance site and redirect everything to this sub-domain with this temporary redirection in your .htaccess located in your main domain : Redirect 302 / http://www.maintenance.mydomain.com/ it'll be more logical as a maintenance site is a website inside of an other, and sub-domains are meat to be used for creating different sites inside an other..

Hope it'll work ! :)

2
  • Option 1 works. :) However, why doesn't the RewriteCond for images work to begin with?
    – Force Flow
    Dec 7, 2012 at 14:33
  • Good ! ;) And ohhh after some research I guess I've found the problem, you need to add an "all characters dot" to say that there is stuff before the actual extension... Something like that : RewriteCond %{REQUEST_URI} !.*\.(jpg|jpeg|png|gif|css|ico)$ [NC]
    – WiMantis
    Dec 7, 2012 at 20:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.