[ic] Re: css background command
Davor Ocelic
docelic at mail.inet.hr
Fri Aug 12 05:17:04 EDT 2005
> I don't think you need to be changing the DirectoryIndex. Don't think what
> is happening is related to that.
>
> The above shown DocumentRoot /home/testsite-site is the document root for
> your SSL aswell as your nonSSL site? I suppose you are having configuration
> settings for both instances?
>
> I would suggest that you check the DocumentRoot for both SSL and nonSSL
> apache configs and set the DocumentRoot the same for both. Then remove the
> absolute URL's for the images (so no http/https://.....) and see if that
> solves your problem. Good luck.
Yes, I also think your problem is not related to what you think it is.
First of all, if you have the CSS embedded in the HTML pages, then
all references to external files (like images, in this case) are treated
relative to the HTML file.
So, your setting of
background-image: url(blueyellow/catbar2.jpg);
has two problems:
1) every directory from which you access pages, must have "blueyellow"
subdirectory in it with all the contents (well, either the real directory
or a symlink to it).
http://www.testsite.com/cgi-bin/testsite/index.html
http://www.testsite.com/cgi-bin/testsite/dir2/index.html
The above two page examples require "blueyellow/" directory present in
both IC catalog's pages/ and pages/dir2/ directory. As you see, however,
2) since you are accessing the pages over cgi-bin, a relative image path
specified in CSS will be looking for images not in your DocumentRoot, but in
Interchange's space, in pages/ directory or its subdirectories.
This isn't going to work at all, because Interchange does not allow you to
fetch images like this, unless you enable the DeliverImage directive.
So you have two solutions:
1) in your Apache document root, create say, "img/blueyellow/" directory with all the
contents.
Then, in CSS, access images using "/img/blueyellow/...." paths.
In Interchange pages, access images with <image src="blueyellow/....">,
after you make sure that ImageDir directive is set to $DocumentRoot/img/
in the catalog.cfg file.
2) instead of providing CSS directly in the page, include the external
file with CSS definitions:
<link rel="stylesheet" type="text/css" media="screen, tv, projection"
href="/css/www.css" title="Default" />
Then, all the files you reference from the CSS file will be treated relative
*to the CSS file* and not the HTML page, so you could get away with using
relative URLs in external file specification.
The /css/ directory above should be located in your Apache DocumentRoot
as well, but keeping it in Interchange pages/ space (if you want Interchange
to operate on the files in there) is possible too (with a little "trick"),
if you rename all .css files to .css.html.
Hope it clears the things up for you,
-doc
More information about the interchange-users
mailing list