个人工具

UbuntuHelp:LocalhostSubdomain

来自Ubuntu中文

跳转至: 导航, 搜索

Seting up Virtual Hosts on Apache with subdomains of localhost allows you to access your local files as if you had different subdomains, eg site1.localhost/ and site2.localhost/ This is particularly useful if you're working on and testing several different websites on your system, and each one requires top-level folders for things such as ServerSideIncludes files and stylesheets.

Hosts

In the Network Configuration Applet, go to the 'Hosts' tab and edit the entry for 127.0.0.1:

  • IP address: 127.0.0.1
  • Aliases: add 'site2.localhost'

Alternatively, you can edit /etc/hosts directly, adding a line such as:

127.0.0.1	site2.localhost

To get the Network Configuration Applet gui and the host tab under Ubuntu 8.10 you must install the GNOME Network Administration Tool. After installation click System>Administration>Network and access the hosts tab.

Apache

Assuming you're using apache2, the cleanest thing to do is create a new configuration file in /etc/apache2/sites-available, and then enable the new site with the command a2ensite (which is similar to create a SymbolicLink to the site in /etc/apache2/sites-enabled). This leaves the default configuration untouched. To revert, simply use the command a2dissite (or delete the symbolic link in /etc/apache2/sites-enabled).

gksudo gedit /etc/apache2/sites-available/myconfig

The text in your new file should be something like this...

<VirtualHost *>
	DocumentRoot /home/username/mysite/
	ServerName site2.localhost

	<Directory /home/username/mysite/>
		Options Indexes FollowSymLinks MultiViews +Includes
		AllowOverride None
		Order allow,deny
		allow from all
	</Directory>
</VirtualHost>

Then do:

sudo a2ensite myconfig

Finally, restart Apache to apply changes:

sudo /etc/init.d/apache2 restart