Apache can rewrite URIs to make prettier URIs than the zope default. You can also set up name based VirtualHosts. So you can transform your plumi site's URI from http://your.server:8080/my-plumi-site to http://plumi.your.server
Basic apache config w/ seperate flv VirtualHost
A basic apache site config would look like this - you will need to change the commented sections, the name, and maybe the logfile locations. If you are using indytube for flash video playback, you will also need to create a separate VirtualHost to host those files.
<VirtualHost *:80>
ServerName plumi.some.domain.com
ServerAdmin webmaster@some.domain.com
<Directory />
Options FollowSymLinks
AllowOverride None
Order allow,deny
# Deny from none
Allow from all
</Directory>
<Location />
Order Allow,Deny
Deny from none
Allow from all
</Location>
ErrorLog /var/log/apache2/plumi-error.log
LogLevel warn
CustomLog /var/log/apache2/plumi-access.log combined
ServerSignature On
RewriteEngine On
# Normalize URLs by removing trainling /'s
RewriteRule ^/(.*)/$ http://127.0.0.1:8080/VirtualHostBase/http/%{SERVER_NAME}:80/plumi/VirtualHostRoot/$1 [L,P]
# ^^^^ ^^^^^
# port number Zope is running on ID of plone site when you first created it
# (e.g. http://localhost:8080/plumi - ID is 'plumi')
# Pass all other URLs straight through
RewriteRule ^/(.*)$ http://127.0.0.1:8080/VirtualHostBase/http/%{SERVER_NAME}:80/plumi/VirtualHostRoot/$1 [L,P]
# ^^^^ ^^^^^
# port number Zope is running on ID of plone site when you first created it
# (e.g. http://localhost:8080/plumi - ID is 'plumi')
</VirtualHost>
Combined config with Zope and flv on same VirtualHost
Another option is to use the same VirtualHost to host the flv files and redirect to the plone site. This can be useful for localised installs without a DNS server, as the plumi site could be accessed purely by IP address. In this case you would have to change the rest of the apache config to handle IP based virtual hosts (or no virtual hosts at all) rather than name virtual hosts.
<VirtualHost *:80>
ServerName plumi.some.domain.com
ServerAdmin webmaster@some.domain.com
<Directory />
Options FollowSymLinks
AllowOverride None
Order allow,deny
# Deny from none
Allow from all
</Directory>
<Location />
Order Allow,Deny
Deny from none
Allow from all
</Location>
# A place to put flv files - this can be anywhere as long as the URI for the dir
# matches the URI for the RewriteCond statements below.
Alias /plumi-flv "/var/www/plumi-flv/"
<Directory "/var/www/plumi-flv">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/plumi-error.log
LogLevel warn
CustomLog /var/log/apache2/plumi-access.log combined
ServerSignature On
RewriteEngine On
#RewriteLog "/var/log/apache2/plumi-rw.log"
#RewriteLogLevel 3
RewriteCond %{REQUEST_URI} !^/plumi-flv
# ^^^^^^^^^
# This should be the same as the URI to the Alias/Directory set above
# Normalize URLs by removing trainling /'s
RewriteRule ^/(.*)/$ http://127.0.0.1:8080/VirtualHostBase/http/%{SERVER_NAME}:80/plumi/VirtualHostRoot/$1 [L,P]
# ^^^^ ^^^^^
# port number Zope is running on ID of plone site when you first created it
# (e.g. http://localhost:8080/plumi - ID is 'plumi')
RewriteCond %{REQUEST_URI} !^/plumi-flv
# ^^^^^^^^^
# This should be the same as the URI to the Alias/Directory set above
# Pass all other URLs straight through
RewriteRule ^/(.*)$ http://127.0.0.1:8080/VirtualHostBase/http/%{SERVER_NAME}:80/plumi/VirtualHostRoot/$1 [L,P]
# ^^^^ ^^^^^
# port number Zope is running on ID of plone site when you first created it
# (e.g. http://localhost:8080/plumi - ID is 'plumi')
</VirtualHost>
