Nice hack.... I indeed like this better. In that time I was able to switch things over and everything works great!
On Tue, 2002-05-21 at 12:20, Bob Weissman wrote: > At 09:55 AM 5/21/02, Ashley M. Kirchner wrote: > >Terry Davis wrote: > >> Thank you for your reply. Where can I read up on how to 'recompile' for > >> that directory? What config files much I change, etc. > > > > When that's done, recompile, and reinstall. Do this for each individual vhost. > > You don't need to do this. One installation of Mailman is sufficient for multiple >vhosts. I have this running just fine on my site. You have to be willing to patch >Mailman/Cgi/admin.py, but this is much cleaner than having multiple copies of Mailman. > > 1. Create your virtual hosts, if you haven't already. Make sure your vhosts are >pointing to Mailman for cgi, icons, and pipermail. For Apache, this is (depending on >where ~mailman lives): > > ScriptAlias /mailman /usr/home/mailman/cgi-bin > <Directory "/usr/home/mailman/cgi-bin"> > AllowOverride None > Options None > Order allow,deny > Allow from all > </Directory> > Alias /icons /usr/home/mailman/icons > Alias /pipermail /usr/home/mailman/archives/private > > This goes inside your <VirtualHost> sections of vhosts.conf for each vhost. > > 2. In your Mailman/mm_config.py file, make sure that VIRTUAL_HOST_OVERVIEW is set to >1. (I use 2, which is nonstandard, to get an exact vhost match rather than the >standard substring match. See patch below. If you have vhost names which are >substrings of each other, you will need to use 2 and you will also need to change >listinfo.py similarly to admin.py.) > > 3. Apply the patch below to admin.py. This copies some vhost-discrimination code >from listinfo.py to admin.py. It works for 2.0.9 and above (I haven't tried it on >older versions.) > > 4. For each list, change the web_page_url to point to the virtual host. This is the >bottom-most parameter on the main admin page for each list. You may need to wait some >time for the DNS records of the new vhosts to propagate before people can access the >pages. > > - Bob > > Patch follows > > *** admin.py.ORIG Thu May 9 12:24:58 2002 > --- admin.py Thu May 9 12:32:06 2002 > *************** > *** 25,30 **** > --- 25,31 ---- > import types > import rfc822 > import signal > + from urlparse import urlparse > > from Mailman import Utils > from Mailman import MailList > *************** > *** 200,205 **** > --- 201,229 ---- > for n in names: > l = MailList.MailList(n, lock=0) > if l.advertised: > + # Following cloned from listinfo.py - BW 5/9/02 > + # XXX We need a portable way to determine the host by which we are being > + # visited! An absolute URL would do... > + http_host = os.environ.get('HTTP_HOST', os.environ.get('SERVER_NAME')) > + port = os.environ.get('SERVER_PORT') > + # strip off the port if there is one > + if port and http_host[-len(port)-1:] == ':'+port: > + http_host = http_host[:-len(port)-1] > + if mm_cfg.VIRTUAL_HOST_OVERVIEW: > + if mm_cfg.VIRTUAL_HOST_OVERVIEW == 2: # Want an exact match > + # extract the host part of the url > + host_part = urlparse(l.web_page_url)[1] > + # remove the port, if any > + host_part = string.split(host_part, ":")[0] > + if http_host and host_part != http_host: > + # List is for different vhost - skip it. > + continue > + else: # Want a simple containment match > + if http_host and \ > + string.find(http_host, l.web_page_url) == -1 and \ > + string.find(l.web_page_url, http_host) == -1: > + # List is for different identity of this host - skip it. > + continue > advertised.append(l) > > if error: -- Terry Davis http://approbation.org/ ------------------------------------------------------ Mailman-Users mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-users Mailman FAQ: http://www.python.org/cgi-bin/faqw-mm.py