lighttpd and server-side includes
I'm using Ubuntu 8.04 with lighttpd 1.4.19 (latest stable release).
Both of the following lines are in my config file, which means that server-side includes are enabled:
server.modules = ( ..., "mod_ssi", ... ) ssi.extension = ( "shtml" )
More accurately, they're in a config file which is linked from the main config file, and which is also a symlink to another file. But I know that this config file is being used by lighty, because if I put garbage in it, lighty would throw an error. I also tried moving the directives to the main config file, with no effect whatsoever.
The file containing the ssi directive is named "index.shtml", and the directive itself is:
Now, when I point my browser to index.shtml, and view the source code, the line above (the ssi directive) appears as part of the source code, whereas it's supposed to have been replaced by the contents of cpright.html.
The file cpright.html exists in the same directory, and it is readable by the lighttpd user. But there is no sign in the access log / error log that lighty has ever looked up that file.
I've spent some time Googling, and it seems that lighty won't parse ssi includes if the included file also contains ssi includes. This is not the case with my site. cpright.html is just a plain html file with some copyright and contact information which I stick into every page of the site. The exact same files worked flawlessly in Apache.
Of course I've tried restarting / reloading lighttpd a number of times.
According to The following thread, this seems to be a recognized bug, but I'm surprised at the lack of any other information on this problem. Are lighty folks too sophisticated to care about primitive stuff like ssi at all?
Any help would be appreciated.
If you installed it using apt you could also try to compile it yourself and override your old version and see if that helps.