1. 程式人生 > >Linux(Ubuntu)安裝和完美解除安裝Apache詳細教程和配置多域名、埠對映

Linux(Ubuntu)安裝和完美解除安裝Apache詳細教程和配置多域名、埠對映

Linux(Ubuntu)安裝,解除安裝Apache詳細教程

第一種方法–軟體包安裝(簡單便捷)

sudo apt-get update

sudo apt-get install apache2

這樣安裝的話:

apache2的檔案:

  • /etc/apache2/apache2.conf 是主要配置檔案(這個檔案的末尾可以看到,include了其它所有的配置檔案)。
  • /etc/apache2/ports.conf始終包含在主配置檔案中。它用於確定傳入連線的偵聽埠。
  • 其它配置檔案在/etc/apache2/sites-enabled,/etc/apache2/conf-enabled,/etc/apache2/mods-enabled目錄下。
  • apache2的預設web目錄:/var/www/html。(在/etc/apache2/sites-enabled/000-default.conf裡可以看到這個DocumentRoot /var/www/html配置)
  • apache2的預設使用者是www-data,定義在/etc/apache2/envvars檔案中。
  • 設定預設主頁的配置檔案/etc/apache2/mods-enabled/dir.conf

訪問:http://你機器的ip。就會看到:It works!這個頁面就是放在/var/www/html目錄下的index.html。

這裡寫圖片描述

第二種方法–原始碼安裝(CentOS和Ubuntu都適用,但是挺麻煩)

一、安裝gcc/gcc-c++(要確保系統上有編譯環境 C )

檢視是否已安裝gcc:(下圖是已安裝,顯示了版本資訊)

這裡寫圖片描述

沒有安裝的話必須先安裝:

yum install gcc-c++

二、下載相關包

下載在/usr/local目錄下(也可以下載在電腦上,上傳到伺服器):

解壓:

提個這裡容易報的錯:發現怎麼也解壓不了檔案,報這個錯:

這裡寫圖片描述

這個時候用file命令看一看檔案是否真的是壓縮檔案就知道了:

這裡寫圖片描述

使用正確連結下載apr顯示的就是一個壓縮檔案:

這裡寫圖片描述

解壓四個壓縮檔案:

tar -zxvf apr-1.6.3.tar.gz
tar -zxvf apr-util-1.6.1.tar.gz
tar -zxvf pcre-8.32.tar.gz
tar -zxvf httpd-2.4.29.tar.gz

三、安裝

1、建立資料夾

這裡寫圖片描述

2、依次安裝

這裡安裝的時候我遇到一個錯誤,就是執行make命令的時候:

這裡寫圖片描述

xml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory。看提示應該是沒安裝解析xml檔案的expat。
解決辦法:cd到root目錄下執行:$sudo apt-get install libexpat-dev 安裝完就可以了。

這裡寫圖片描述

apr :

  • cd apr-1.6.3
  • ./configure –prefix=/usr/local/apr
  • make
  • make install

apr-util:

  • cd /usr/local/apr-util-1.6.1
  • ./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr/bin/apr-1-config
  • make
  • make install

pcre:

  • cd /usr/local/pcre-8.32
  • ./configure –prefix=/usr/local/pcre –with-apr=/usr/local/apr/bin/apr-1-config
  • make
  • make install

httpd:

  • cd /usr/local/httpd-2.4.29
  • –prefix=/usr/local/apache2 –sysconfdir=/etc/httpd –enable-so –enable-rewirte –enable-ssl –enable-cgi –enable-cgid –enable-modules=most –enable-mods-shared=most –enable-mpms-shared=all –with-apr=/usr/local/apr –with-apr-util=/usr/local/apr-util
  • make
  • make install
    這裡是把配置檔案httpd.conf放在/etc/httpd下面的。
    啟動:/usr/local/apache2/bin/apachectl start
    停止:/usr/local/apache2/bin/apachectl stop
    重啟:/usr/local/apache2/bin/apachectl restart

瀏覽器訪問:http://localhost:80 看到It works!就是啟動ok了。可能會遇到許多問題,根據提示一個一個百度都是可以搞定的。

這裡寫圖片描述

原始碼安裝軟體configure時可能會報錯:configure: error: xml2-config not found. Please check your libxml2 installation.

解決辦法:方法:apt-get install libxml2-dev

三、解除安裝

sudo apt-get –purge remove apache2

sudo apt-get –purge remove apache2-common

sudo apt-get –purge remove apache2-utils

sudo apt-get autoremove apache2

–purge是不保留配置檔案的意思

刪掉/etc/apache2資料夾: sudo rm -rf /etc/apache2

刪掉/var/www資料夾: sudo rm -rf /var/www

刪掉/etc/init.d/apache2檔案: sudo rm -rf /etc/init.d/apache2

四、配置多域名、埠對映

Listen 80
Listen 8080

<VirtualHost *:80>
DocumentRoot /var/www/html/專案1
ServerName http://www.域名1.com 
</Virtualhost>
<Directory "/var/www/html/專案1">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>

<VirtualHost *:80>
DocumentRoot /var/www/html/專案2
ServerName http://www.域名2.com 
</Virtualhost>
<Directory "/var/www/html/專案2">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>

<VirtualHost Ip:8080>
 DocumentRoot /var/www/html/專案3
 ServerName Ip:8080
</VirtualHost>
<Directory "/var/www/html/專案3">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>