CentOS LAMP環(huán)境下建立多個站點

這里只講解Apache對于一臺服務(wù)器(IP)下如何建立多個站點并依端口綁定域名。
Apache的安裝yum法網(wǎng)上挺多教程的就不復(fù)述了。
首先,我們講一下端口和訪問讀取。
通常默認(rèn)的httpd端口是80,而默認(rèn)的根文件夾是/var/www/html,在未綁定域名之前你可以將IP理解為裸奔的網(wǎng)址鏈接。也就是當(dāng)你訪問IP時,進(jìn)入的是80端口,讀取的/var/www/html文件夾下的index.html/php文件。
于是我們做多站點的邏輯就非常簡單了,將不同的根文件夾綁定給不同的訪問端口。
比如:A站點,端口是81,綁定給/var/www/html/A,那么訪問http://123.456.789:81時候會讀取/var/www/html/A 文件夾下的index,而訪問http://123.456.789的時候則是讀取/var/www/html文件夾下的index
行,了解了這個就開始操作吧。以需要新增的端口81為例:
打開httpd.conf,按 I 鍵進(jìn)行編輯
vi?/etc/httpd/conf/httpd.conf
找到?Listen 80?在下面添加你需要新增的端口
Listen 80
Listen 81
拉到文件末尾,找到?#NameVirtualHost *:80??刪除#號,并在下方添加新端口
NameVirtualHost *:80
NameVirtualHost *:81
在文件最末尾添加VirtualHost的定義
<VirtualHost *:80>
?DocumentRoot /var/www/html
?ServerName DefaultSite
</VirtualHost>
<VirtualHost *:81>
DocumentRoot /var/www/html/asite
ServerName ASite
<Directory "/var/www/html/asite">
allow from all
Options None
</Directory>
</VirtualHost>

關(guān)于Directory的目錄權(quán)限配置可以參考:
apache配置Directory目錄權(quán)限的配置
https://blog.csdn.net/yyyuuueeee/article/details/49802157
Apache httpd.conf配置文件AllowOverride參數(shù)詳解
http://www.upupw.net/server/n73.html

到這里Apache的配置已經(jīng)完成了,保存并重啟httpd即可
按Esc退出編輯,然后輸入?:wq!?保存并退出,接著重啟apache,輸入指令:
service httpd restart
注意!
如果你打開了防火墻,那么還得在防火墻里給端口通行。
打開?iptables,按 I 鍵進(jìn)行編輯
vi /etc/sysconfig/iptables
找到80端口那一行,在下面增加一行與80端口一致的配置即可
?-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
?-A INPUT -m state --state NEW -m tcp -p tcp --dport 81 -j ACCEPT
按Esc退出編輯,然后輸入 :wq! 保存并退出,接著重啟防火墻,輸入指令:
?service httpd restart
你可以輸入指令?service httpd status 查看防火墻規(guī)則是否成功寫入。
還有,如果你買的服務(wù)器有單獨的防火墻設(shè)置,那么你還得在控制臺的防火墻通行規(guī)則里面把你之前添加的新端口給加上去。
以上完成之后,訪問http://你的域名:端口,就能看到實際綁定的效果了。