pictures

multiple ips, one nic, apache, multiple virtual hosts with ssl, mac os x.

hr
hr Heading 2 Icon multiple ips, one nic, apache, multiple virtual hosts with ssl, mac os x.

Set Up: Mac OS X Client OS, one network card, and multiple Virtual Hosts (three of the Virtual Hosts need SSL certificates) using Apache.
Problem: I have been using Virtual Hosts with Apache for a few years and until now, I have only had one web site that has needed a SSL certificate. After rethinking site security, I decided at least two additional web sites needed SSL certificates so no passwords were sent as clear text while using http basic authentication. However, my current Virtual Host setup only supports one SSL certificate…and I need to use three.

Basic Apache background:
When configuring multiple Virtual Hosts in Apache, you can use IP-based Virtual Hosts, or name-based Virtual Hosts. (When using IP-based Virtual Hosts, the server uses an IP address for each Virtual Host. When using name-based Virtual Hosts, all sites use the same IP address and the client’s browser sends the name of the site with each request. Apache then uses the name to determine which host should serve the request.) The problem with using name-based Virtual Hosts is that the host name is contained in the data stream (which is encrypted by SSL). In … [more]

my OS X web development setup.

hr
hr Heading 2 Icon my OS X web development setup.

If you find yourself developing more than one web site at home, or anywhere with a *NIX machine with Apache, and want to be able to access all the sites for testing, it is time to set up Virtual Hosts. By using Virtual Hosts, you can access all your web sites easily (especially if you use absolute links) and separately by typing in: http://jappler/ and http://bareminimum/ and http://other. How does this work? Like I mentioned before, the first step is to set up Virtual Hosts. The second step is to edit your /etc/hosts file so you can assign names to your localhost address (jappler for http://jappler/)
Setting up Virtual Hosts

To set up virtual hosts, you will need to edit your Apache configuration (sudo pico /etc/httpd/httpd.conf). You can make a number of changes in the Apache configuration to set up an environment that is right for you, but for now, all you are concerned about is located at the end of the standard config file.
Uncomment the line: NameVirtualHost *:80 (delete the number sign in front of the line)
Add in your Virtual Hosts information:
< virtualhost *:80 >
ServerAdmin youremailaddress@whatever.com
[more]

redirecting domain.com to www.domain.com.

hr
hr Heading 2 Icon redirecting domain.com to www.domain.com.

So you have a web server and one/some domain names. You want to have all requests to domain.com to go to www.domain.com. most companies have this redirect in place (Apple is an example). I was stumped when I first set out to do this...so here is what I learned from our friends on the Apache mailing list.

< virtualhost *:80 >
ServerName www.domain.com
ServerAlias domain.com
Redirect permanent / http://www.domain.com/
< /virtualhost >

< virtualhost *:80 >
ServerName www.domain.com
ServerAdmin webmaster@domain.com
DocumentRoot /Volumes/www/domain.com/documents
< /virtualhost >

This set up in Apache will then redirect all domain.com requests to www.domain.com.
You cannot beat mailing lists' support!
[tags]apache, vhosts, redirect[/tags]


search

subscription information

Blog RSS

Comments RSS



Powered by FeedBlitz

blog categories

blog tags

most popular posts


blog archive

standards

Get Firefox!
XHTML
CSS