Ubuntu 16.04与Apache虚拟主机配置的步骤详解
這篇文章主要給大家介紹了關(guān)于Ubuntu 16.04與Apache虛擬主機(jī)配置的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用ubuntu16.04系統(tǒng)具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們來一起看看吧。
前言
眾所周知在window下,Apache的配置文件是httpd.conf,但在Linux下安裝了Apache后發(fā)現(xiàn)其配置并不像window下那么簡單,Linux下Apache將各個(gè)設(shè)置項(xiàng)分在了不同的配置文件中,想想也是有很大的理由的,這樣子可以使用戶在開發(fā)過程中自由的搭配其不同的功能模塊,更好的提高效率,不過,如果不事先了解Apache,可能在配置時(shí)蒙圈。如何起名
Ubuntu中Apache的配置文件是//etc/apache2/apache2.conf。Apache在啟動(dòng)時(shí)會(huì)找到這個(gè)文件并自動(dòng)讀取該文件中的配置信息,而其他配置文件則是通過include指令包含進(jìn)來的,在apache2.conf 中可以看到這些引入行。當(dāng)然,也可以將所有的配置全放在apache2.conf或者h(yuǎn)ttpd.conf或者其他文件中,Apache這樣劃分是一種比較好的習(xí)慣。
在Ubuntu中Web文檔的根目錄是在/var/www中,怎么知道的呢?在/etc/apache2/sites-enabled/000-default中有這樣一段內(nèi)容
NameVirtualHost *<VirtualHost *>ServerAdmin webmaster@localhostDocumentRoot /var/www/
這是設(shè)置虛擬機(jī)的,當(dāng)然,如果覺得沒有用的,也可以將apache2.conf里的Include /etc/apache2/sites-enabled/一行注釋掉,并在htttpd.conf中的DocumentRoot設(shè)置成某個(gè)項(xiàng)目的目錄,這樣可以方便開發(fā)。
在/etc/apache2目錄下,發(fā)現(xiàn)了sites-enabled目錄,然而還有一個(gè)sites-available目錄,那么這兩個(gè)目錄到底有什么作用呢?其實(shí),sites-available這個(gè)目錄包含Apache虛擬主機(jī)的配置文件。虛擬主機(jī)允許Apache配置多個(gè)站點(diǎn)并為每個(gè)站點(diǎn)配置不同的參數(shù)。而sites-enabled目錄的作用是持有/etc/apache2/sites-available目錄下文件的鏈接。當(dāng)Apache重啟后,該目錄中包含的站點(diǎn)將會(huì)被激活。如果apache上配置了多個(gè)虛擬機(jī),每個(gè)虛擬機(jī)的配置文件都放在sites-available下,那么對(duì)于虛擬主機(jī)的停用,啟動(dòng)就是非常方便了,操作某個(gè)虛擬主機(jī)就不用動(dòng)配置文件了
------- 我是美麗的分割線 -------
在/etc/apache2下還用類似于sites-enabled和sites-available兩個(gè)目錄的mods-available和mods-enabled兩個(gè)目錄,那么這兩個(gè)目錄有何作用呢?其實(shí)類似于sites-enabled和sites-available,mods-available這個(gè)目錄包含模塊和模塊配置文件,不是所有的模塊都有配置文件。比如當(dāng)apt-get install php5安裝了php模塊,在這兩個(gè)目錄中就有了php5.load、php5.conf和指向這兩個(gè)文件的鏈接。這對(duì)于apache開啟停用某個(gè)模塊是非常方便的
在/etc/apache2目錄下,還有一個(gè)文件ports.conf,這個(gè)文件配置Apache監(jiān)聽的端口,如果覺得嫌棄它多余,可以先把a(bǔ)pache2.conf中的Include /etc/apache2/ports.conf一行去掉,在httpd.conf里設(shè)置Apache端口。
在Ubuntu缺省安裝的目錄有與其他相比有一點(diǎn)不同。在ubuntu中module和 virtual host的配置都有兩個(gè)目錄,一個(gè)是available,一個(gè)是enabled,available目錄是存放有效的內(nèi)容,但不起作用,只有用ln 連到enabled過去才可以起作用。這樣子對(duì)于開發(fā)以及調(diào)試都很方便。
------- 我是美麗的分割線 -------
什么是虛擬主機(jī)(Virtual Hosting)
所謂虛擬主機(jī),就是把一臺(tái)運(yùn)行在互聯(lián)網(wǎng)上的服務(wù)器劃分成多個(gè)“虛擬”的服務(wù)器,每一個(gè)虛擬主機(jī)都具有獨(dú)立的域名和完整的Internet服務(wù)器(支持WWW、FTP、E-mail等)功能。再簡單的說,就是同一臺(tái)服務(wù)器可以同時(shí)處理超過一個(gè)域名(domain)。假設(shè)www.example1.com和www.example2.com兩個(gè)域名都指向同一個(gè)服務(wù)器,而web服務(wù)器又支持虛擬主機(jī),那么www.example1.com和www.example2.com可以訪問到同一服務(wù)器上不同的web空間。
總結(jié)
以上是生活随笔為你收集整理的Ubuntu 16.04与Apache虚拟主机配置的步骤详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在Apache上隐藏服务器签名的方法
- 下一篇: 使用Apache来构建URL缩短服务