[Zope3-Users] Apache config. for skinned sites
andrew
andrew at reurbanise.co.nz
Thu Aug 21 01:04:30 EDT 2008
Hi All,
Say I've got a site at:
http://127.0.0.1:8080/mysite
and I've mapped this to a domain (mysite.com) pointed to by an Apache
rewrite rule:
RewriteRule ^/(.+) http://127.0.0.1:8080/mysite/++vh++http:
%{HTTP_HOST}:80/++/$1 [L,P]
but I've now created a skin for the site that I want to point
skin2.mysite.com at. The following rewrite rule works:
RewriteRule ^/(.+) http://127.0.0.1:8080/mysite/++vh++http:
%{HTTP_HOST}:80/++/++skin++skin2/$1 [L,P]
except that the skin URL component ends up in viewlet URLs, which sort
of makes sense since it's after the virtual host stuff. However, it
would be nice to get rid of the skin URL component altogether in page
resources since it's being handled by Apache already.
Also, I still want to be able to test the skin at:
http://mysite.com/++skin++skin2/
so in this case the skin component would have to stay there.
I've tried moving the skin URL component before the virtual host
component in the rewrite rule:
RewriteRule ^/(.+) http://127.0.0.1:8080/mysite/++skin++skin2/++vh
++http:%{HTTP_HOST}:80/++/$1 [L,P]
but when accessing, e.g., http://skin2.mysite.com/testpage I get:
File
'/opt/vortex/buildout/vortex/var/eggs/zope.publisher-3.4.1-py2.4.egg/zope/publisher/http.py', line 568 in shiftNameToApplication
raise ValueError("Can only shift leading traversal "
ValueError: Can only shift leading traversal names to application names
Any ideas how I can have my cake and eat it too ? :-)
Cheers, Andrew.
More information about the Zope3-users
mailing list