开发者

RewriteCond and Alias

开发者 https://www.devze.com 2022-12-26 01:36 出处:网络
I have defined alias that looks like this: Alias /pictures/sm/ /var/www/my_site/data/_active_thumbnails/

I have defined alias that looks like this:

Alias /pictures/sm/ /var/www/my_site/data/_active_thumbnails/

Later in the VirtualHost section have:

DocumentRoot    /var/www/my_site/sites/www.my_site.com/htdocs

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/thumbnails/(.*)\.(jpg|JPG)    /images/stg-list-img.png [PT,L]

What I'm trying to do is to display /images/stg-list-img.png placeholder image only if the original image does not exist on the drive.

Right now it's replacing all the images from /th开发者_JS百科umbnails/. It looks like the RewriteCond is not aware about the Alias. Is there the way to overcome it?

Thanks


REQUEST_FILENAME is only the full filesystem path wnen you use it with your rules in htaccess or -- in per-virtualhost config like you have it's still just the URI.

This is mainly because Apache hasn't yet had a chance to map it to any file at this stage.

You could just add the prefix to your -f test, or all of: put your rules in , adding a Rewritebase /pictures/sm/, and changing your rule's regex...

However, your regex doesn't currently make any sense. If the Alias matters and is /pictures/sm, the rewriterule could never match with ^/thumbnails.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号