4 -portBase

 

-----

Port-Based Virtualhost - webpage

mydomain.com:80  --- opens var/www1 mydomain.com:81  --- opens var/ww2 mydomain.com:82  --- opens var/www3

> netstat -tulpn | less tcp        0      0 :::80       :::*      LISTEN      6840/httpd tcp        0      0 :::81       :::*      LISTEN      6840/httpd tcp        0      0 :::82       :::*      LISTEN      6840/httpd

[root@server ~]# vi /etc/httpd/conf/httpd.conf

Listen 80 Listen 81 Listen 82  # Listen for virtual host requests on all IP addresses NameVirtualHost *:80  <VirtualHost *:80> DocumentRoot /var/www1 ServerName www.example1.com </VirtualHost>  NameVirtualHost *:81 <VirtualHost *:81> DocumentRoot /var/www2 ServerName www.example2.org </VirtualHost>   NameVirtualHost *:82 <VirtualHost *:82> DocumentRoot /var/www3 ServerName www.example3.org </VirtualHost>

 -                   -------------------------------XXX--------------------------

mkdir -p /var/www/html/www.ipvhost1.com  mkdir -p /var/www/html/www.ipvhost2.com  mkdir -p /var/www/html/www.portvhost.com

vi /var/www/html/www.ipvhost1.com/index.html

Add the following content.

<html> <head> <title>www.ipvhost1.com</title> </head> <body> <h1>The ipvhost1.com ip virtual host is working!</h1> </body> </html>

Save and close the file when you are finished.

Create an “index.html” file for “www.ipvhost2.com” virtual host.

vi  /var/www/html/www.ipvhost2.com/index.html

Add the following content.

<html> <head> <title>www.ipvhost2.com</title> </head> <body> <h1>The ipvhost2.com ip virtual host is working!</h1> </body> </html>

Save and close the file when you are finished.

Create an “index.html” file for “www.portvhost.com” virtual host.

vi  /var/www/html/www.portvhost.com/index.html

Add the following content.

<html> <head> <title>www.portvhost.com</title> </head> <body> <h1>The portvhost.com port virtual host is working!</h1> </body> </html>

chown -R www-data:www-data /var/www/html/www.ipvhost1.com  chown -R www-data:www-data /var/www/html/www.ipvhost2.com  chown -R www-data:www-data /var/www/html/www.portvhost.com

Also, you need to make sure the Apache web root (/var/www/html) directory is readable so that everyone can read files from it.

chmod -R 755 /var/www/html

[root@server ~]# vi /etc/httpd/conf/httpd.conf

Listen 80 Listen 81 Listen 82

<VirtualHost 192.168.1.228:80>   ServerAdmin admin@ipvhost1.com ServerName  www.ipvhost1.com DocumentRoot /var/www/html/www.ipvhost1.com   ErrorLog ${APACHE_LOG_DIR}/www.ipvhost1.com_error.log CustomLog ${APACHE_LOG_DIR}/www.ipvhost1.com_access.log combined   </VirtualHost>

<VirtualHost 192.168.1.228:81>   ServerAdmin admin@ipvhost2.com ServerName  www.ipvhost2.com DocumentRoot /var/www/html/www.ipvhost2.com   ErrorLog ${APACHE_LOG_DIR}/www.ipvhost2.com_error.log CustomLog ${APACHE_LOG_DIR}/www.ipvhost2.com_access.log combined   </VirtualHost>

<VirtualHost 192.168.1.228:82>   ServerAdmin admin@portvhost.com ServerName  www.portvhost.com DocumentRoot /var/www/html/www.portvhost.com   ErrorLog ${APACHE_LOG_DIR}/www.portvhost.com_error.log CustomLog ${APACHE_LOG_DIR}/www.portvhost.com_access.log combined   </VirtualHost>

# service httpd restart

httpp: your ip:port 80/81/82

----------