X

Debian Linux Apache 1.3 到 Apache2 無痛轉換

考慮很久, 實在很懶得做 apache 1.3 到 2.0 的轉換, 感覺起來就很累....

但是沒想到出乎意料外的容易, 而且 Debian 早期的 apt-get upgrade 就已經都準備好, 就剩沒幫我把設定檔拷過去而已. XD

之前每次升級都看到 apache2 的 module 自動的被裝上去, 但是沒有影響到正常運作, 也就懶得理他, 這次想先測測看轉換成 apache2 會不會很辛苦, 才發現原來該裝的 apache2, libapache2-mod-php5 等, 該用的早就都裝好了... XD

先來做轉換測試:

  1. vim /etc/apache2/ports.conf # 將 80 先隨便改個 數字(換 port), 之後就可以 http://DOMAIN:port/ 先測測看(不要影響到 80 port 的運作)
  2. touch /etc/apache2/httpd.conf # 預設沒有 httpd.conf 檔, 但 apache2.conf 有寫 Include httpd.conf, 所以 touch 一個給它.
  3. vim /etc/default/apache2 # 將 1 改成 0, 不然怎麼樣都無法啟動 apache2(應該是防止怕 apache 1.3 跟 2.0 意外相衝吧, 但是都改 port 了, 就不用擔心囉~)

    改成 => NO_START=0

到此, /etc/init.d/apache2 start 應該就可以正常啟動了.(開 broswer 連連看 http://DOMAIN:8000/)

再將 apache 1.3 的設定檔 cp 到 apache2

  • cp /etc/apache/conf.d/* /etc/apache2/conf.d/

稍微看一下 /etc/apache/httpd.conf 有什麼自己加的東西, 再補到 /etc/apache2/httpd.conf 去即可.

  • 如果龜毛一點, log 檔位置也想換的, 記得 在 conf.d 裡, 把檔案中寫的 /var/log/apache 都改成 /var/log/apache2
  • 有安裝 awstats(/etc/awstats/) 的, log 檔路徑也是一樣, 將 /var/log/apache 改成 /var/log/apache2

到此應該就能算是轉換完成囉!, 下述是有遇到些小狀況, 都蠻好排除的. 🙂


目前測試遇到的狀況:

Virtual Host 有問題

  • NameVirtualHost * 註解掉(或砍掉)即可.(因為 sites-available/default 已有加此行, 且於 site-enabled/000-default 也啟動了)

php5 不會動

  1. cd /etc/apache2/mods-enabled
  2. ln -s ../mods-available/php5.conf php5.conf
  3. ln -s ../mods-available/php5.load php5.load
  4. /etc/init.d/apache2 reload 即可

User public_html 想要啟用

  1. ln -s ../mods-available/userdir.conf .
  2. ln -s ../mods-available/userdir.load .
  3. /etc/init.d/apache2 reload 即可

目前做到此還沒測出什麼問題, 明天再詳細測試看看, 希望轉換愉快囉 🙂


附註: (簡單紀錄一下目前看 apache2 設定檔的心得)

Apache2 的設定如下:

/etc/apache2 分下述目錄:

  • mods-available: 可以用的 modules 寫在此處
  • mods-enabled: 要啟用的話, 再用 ln 把 mods-available 連結到此處
  • conf.d : 設定檔, 相容 apache 1.3, 在此檔案都會被載入進去
  • sites-available: 要用的 site(採 virtual host方式撰寫)
  • sites-enabled: 要啟用此 site(或說採用此 Virtual Host), 一樣用 ln連結到此處(Virtual Host 裡, NameVirtualHost * 這個參數要最早先被設定, 所以會看 default 的 ln 是 000-default, 其它自己在做 ln 時, 如果有數字開頭的注意一下, 不要比 000-default 還先載入進去即可)

Apache2 設定檔載入順序:

  1. apache2.conf
  2. mods-enabled/*.load
  3. mods-enabled/*.conf
  4. httpd.conf
  5. ports.conf
  6. conf.d/*
  7. sites-enabled/* 
Tsung: 對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
Related Post