mod_rewrite and Apache2 error.log: non-regex pattern

Hi!

I wonder if someone could shed some light on why I get the errors:

`[warn] RewriteCond: NoCase option for non-regex pattern '-f' is not supported and will be ignored.`
`[warn] RewriteCond: NoCase option for non-regex pattern '-d' is not supported and will be ignored.`

in Apache2 error.log.

The mod_rewrite is enabled.

I am using the latest Zenphoto nightly build (the comments are now working!). I got the same error with the latest official 1.1.3 release. The theme is stopdesign on a ubuntu server.

The .htaccess file contains the lines:

`RewriteCond %{REQUEST_FILENAME} -f [NC,OR]`

`RewriteCond %{REQUEST_FILENAME} -d [NC]`

What do these lines mean and why does Apache2 not recognize them? Do you get the same errors?

Daniel

Comments

  • Yes. I get this too. Please let me know.

    I have an old version of zen photo that is heavily modded, so I'm not updating anytime soon. The stinking hosting company upgraded without telling anyone to apache 2 yesterday and took all the sites on my box down for 2 hours. Then today, I go to my zen photo site and it's 500 server errors. The minor one is the -f and -d.

    Somehow or another I figured out the problems with htaccess, which was the ? sign and the back slashes, I removed those and the site is fine now.

    Here's mine:

    `

    # htaccess file for zenphoto

    # NOTE: Change the RewriteBase below to the absolute path to your zenphoto directory.

    RewriteEngine On

    # !!! Change this to the web path (eg: http://www.example.com/photos --> /photos) !!!

    RewriteBase /portfolio

    RewriteCond %{REQUEST_FILENAME} -f [NC,OR]

    RewriteCond %{REQUEST_FILENAME} -d [NC]

    RewriteRule ^.*$ - [R,L]

    RewriteRule ^admin/?$ zen/admin.php [R,L]

    RewriteRule ^page/([0-9]+)/$ index.php?page=$1 [L,QSA]

    RewriteRule ^([^/]+)/$ index.php?album=$1 [L,QSA]

    RewriteRule ^([^/]+)/page/([0-9]+)/$ index.php?album=$1&page=$2 [L,QSA]

    RewriteRule ^([^/]+)/image/(thumb|[0-9]{1,4})/([^/]+)$ zen/i.php?a=$1&i=$3&s=$2 [L,QSA]

    RewriteRule ^([^/]+)/image/([^/]+)$ albums/$1/$2 [L]

    RewriteRule ^([^/]+)/([^/]+)/view$ index.php?album=$1&image=$2 [L,QSA]

    RewriteRule ^([^/]+)/([^/]+)$ index.php?album=$1&image=$2 [L,QSA]

    `

  • The problem is not with the backslashes and question marks. Those are part of the regular expressions for matching files and directories. I have submitted a patch (#386) that fixes this problem. Hopefully it will be applied before the next release.
Sign In or Register to comment.