httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Yehuda Katz <yeh...@ymkatz.net>
Subject Re: [users@httpd] Show Alternate Image if Requested Image is Missing
Date Tue, 03 May 2016 15:25:38 GMT
The images have to be accessible somehow: Just to clarify, you said:
- The DocumentRoot is "/mnt/data/pawebdata/docs"
- The images are located in "/mnt/data/pawebdata/images"

How does the browser ever load any image? Is there an alias directive
somewhere in the configuration?

Can you put the image at
/mnt/data/pawebdata/docs/images/sketches/no_sketch.jpg and see if it works?

You could try an external redirect instead, but I haven't tested that
myself.
I recommend making it a temporary redirect (302) rather than permanent
(301):

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule \.(gif|jpe?g|png|bmp)$ /images/sketches/no_sketch.jpg
[NC,L,R=302]

- Y

On Tue, May 3, 2016 at 11:16 AM, Julie Kurpa <jkurpa@volusia.org> wrote:

> Thanks Yehuda,
>
> I tried your suggested code already and have just retried it.   The
> behavior is that all jpg's are now not showing at all.
>
> From what I tell from the rewrite.log, it is pasting the DocumentRoot path
> in front of the path to the "no_sketch.jpg" for all JPG references.
>
> The DocumentRoot is "/mnt/data/pawebdata/docs"
>
> Here's what the log shows is being used for the path to "no_sketch.jpg"
>
> /mnt/data/pawebdata/docs/images/sketches/no_sketch.jpg
>
> Note that I did not configure this Apache environment.  I'm coming in
> (inexperienced...but not dumb) with the assignment to show "no_sketch.jpg"
> for missing JPGs in the /image/sketches path and having to work with
> someone else's configuration.
> So I'll try to give the best information I can.
>
>
> Julie Kurpa
> Sr. Systems Programmer
>   119 W. Indiana Ave
>   DeLand, FL  32720
>   Office:  (386) 736-5960 x12875
>
> >>> Yehuda Katz <yehuda@ymkatz.net> 5/3/2016 11:02 AM >>>
> On Tue, May 3, 2016 at 10:52 AM, Julie Kurpa <jkurpa@volusia.org> wrote:
>
> > The sketches themselves are JPGs located within a directory on the Linux
> > server.
> > If the JPG for a property is found to be missing, I would like to show an
> > alternate JPG called "no_sketch.jpg".
> >
>
>
> I've tried a gazillion variations of the RewriteRule and am now trying the
> > Redirect.
> >
> > I'm completely at a loss.    Here is what I have in my
> > vhosts.d/non-ssl.conf file for this step:
> >
> > <IfModule mod_rewrite.c>
> >  RewriteEngine on
> >  RewriteLog /var/log/apache2/rewrite.log
> >  RewriteLogLevel 4
> >  RewriteCond %{REQUEST_FILENAME} !-f
> >  RewriteCond %{REQUEST_URI} "\.(gif|jpg|jpeg|png)$"
> >  Redirect  .* http://pawebdev1.vcgov.org/images/sketches/no_sketch.jpg
> > </IfModule>
> >
>
> You need to use RewriteRule, Redirect has nothing to do with RewriteCond.
> Something like the following should be enough:
>
> RewriteEngine on
> RewriteCond %{REQUEST_FILENAME} !-f
> RewriteRule \.(gif|jpe?g|png|bmp)$ /images/sketches/no_sketch.jpg [NC,L]
>
> I also usually recommend not using the <IfModule> directive. If you want
> this to work, you probably want the server to show an error if the rewrite
> module isn't loaded rather than ignore the configuration.
>
> - Y
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
> For additional commands, e-mail: users-help@httpd.apache.org
>
>

Mime
View raw message