O que você precisa é da diretiva Apache VirtualHost. Veja a Documentação do Apache e algumas Exemplos .
Basicamente, o que você quer fazer no Ubuntu é certificar-se de que a porta que você deseja usar (normalmente: 80) está habilitada em /etc/apache2/ports.conf assim:NameVirtualHost *:80
Listen 80
Em seguida, você terá que criar um novo arquivo conf em / etc / apache2 / sites-available. Eu sugiro nomear proj1.conf ou proj1.mydomain.conf.
Lá você pode configurar o VirtualHost da seguinte forma:
<VirtualHost *:80>
ServerName proj1.subdomain.domain.com
DocumentRoot /var/www/proj1
ServerAdmin [email protected]
# Write a seperate log per Virtualhost
CustomLog /var/log/apache2/proj1.subdomain.access_log combined
ErrorLog /var/log/apache2/proj1.subdomain.error_log
# Maybe you want to put some restrictions on the directory
<Directory /var/www/proj1>
Options -Indexes +FollowSymLinks + Includes
AllowOverride All
# Restrict Access to certain IP's
Order Deny,Allow
Deny from All
Allow from 127.0.0.1 IP IP IP
Satisfy ALL
</Directory>
</VirtualHost>
Consulte o Manual do Apache para ver o que você poderia fazer com a Diretiva.
Para ativar este site, vincule-o a / etc / apache2 / sites-enabled
ln -s /etc/apache2/sites-available/proj1.conf /etc/apache2/sites-enabled/proj1
Agora, tudo o que você precisa fazer é certificar-se de que sua configuração é válida e, em seguida, reiniciar o Apache:
apache2ctl configtest && /etc/init.d/apache2 restart
Naturalmente, você terá que configurar o subdomínio em seu DNS de forma que aponte para este servidor.