[Debian] 買 VPS 後的設定 - 基本調整、Apache、PHP、MySQL 等等

| 六月 08, 2006 | 4個迴響| 沒有引用| 5683 reads | Size: L, M, S | Edit: P, C, R |
| Category: Unix-like. |

    當買到了新主機後,最重要的就是後續的調整。「天下沒有不好的主機,只有懶惰的網管和擺爛的設定」,XD。

    買了這個 VPS 後,其實也搞了不少烏龍,真是辛苦站上的使用者了,忍受這陣子不穩定的主機,其實讓我學到了,應該要準備齊全一點才讓主機上線,而不該草草把主機推上陣。

    這邊紀錄一下後來對這部 Debian3.x 的 VPS 做的後續設定。

    Leeware 給出來的主機,除了 SUSE 之外,都是最原始的狀態,當然我的 debian 主機也不例外。

     

    1. 語言設定 與 shell

    1.1 編輯「/etc/locale.gen」檔案,改為:

    en_US ISO-8859-1
    zh_TW.UTF-8 UTF-8
    zh_TW.Big5 Big5

    接著執行 # locale-gen 

    1.2 設定你自己的 shell 設定

    例如我的 TCSH 設定(「~/.cshrc」或「/etc/csh.cshrc」):

    if ($?tcsh && $?prompt) then

      # Command History Search
      bindkey -k up history-search-backward
      bindkey -k down history-search-forward

      # Auto List Files
      set autolist

    endif 

    # 中文語系
    setenv  LANG zh_TW.UTF-8
    setenv  LC_ALL zh_TW.UTF-8

    # ls alias
    alias  la  ls -a
    alias  lf  ls -FA
    alias  ll  ls -lA

    等等,端看個人習慣。

    或是 BASH 設定(「~/.bashrc」或「/etc/bash.bashrc」)

    # 彩色顯示 以及 ls alias
    export LS_OPTIONS='--color=auto'
    eval "`dircolors`"
    alias  ls='ls $LS_OPTIONS'
    alias  la='ls $LS_OPTIONS -a'
    alias  lf='ls $LS_OPTIONS -FA'
    alias  ll='ls $LS_OPTIONS -lA'

    # 中文語系
    export LC_ALL=zh_TW.UTF-8
    export LANG=zh_TW.UTF-8

    1.3 SHELL

    Shell 我不知道甚麼好甚麼壞,用的習慣就好!因為我最早接觸的是 FreeBSD ,用的是 tcsh,所以到了後來玩 Linux 還是都會改成 tcsh。而非 Linux 常見的 bash。更改 shell 可以先查看「/etc/shells」下面有哪些可用,然後可以利用:

    # chsh

    來更換。 請注意,要打上 /bin,例如「/bin/tcsh」或「/bin/bash」!否則下場很麻煩。

     

    2. Base Config

    諸如 hostname、sendmail、apt、時區 等等:

    # base-config

     

    3. Apache2、MySQL、PHP4、eAccelerator

    3.1 安裝

    # apt-get install  apache2  libapache2-mod-php4  php4  php4-gd2  php4-imagick  mysql-server  php4-mysql  php4-dev

    接著,就等著他把東西裝到好了。

    3.2 eAccelerator 

    這邊 下載最新版本,解壓縮並進入該資料夾。

    # export PHP_PREFIX="/usr" ; $PHP_PREFIX/bin/phpize ; ./configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config ; make ; make install

    這樣,eAccelerator 就完成一半了。接著要幫 eAccelerator 建立快取的資料夾:

    # mkdir /tmp/eaccelerator ; chown www-data.www-data /tmp/eaccelerator 

    這樣安裝的步驟就完成了。

    這個是有名的 truck-mmcache 的後繼版本,公用是把 php 快取起來,就不需要每個要求都需要重編 php頁面。根據我使用的結果,我覺得效果很大,強烈建議要裝!更詳細的內容可以參考這兩篇:12(本段原始出處為 Tsung's Blog原文連結。) 

    3.3 php.ini

    接著編輯「/etc/php4/apache2/php.ini」:

    找到「; extension=mysql.so」和「; extension=gd.so」,將前面的「;」拿掉。

    接著修改下面三個東西:

    memory_limit = 30M
    post_max_size = 58M            ; 一定要比 upload_max_filesize 大。
    upload_max_filesize = 50M

    最後,把下面這段,貼到檔案最後面:

    extension="eaccelerator.so"
    eaccelerator.shm_size="16"
    eaccelerator.cache_dir="/tmp/eaccelerator"
    eaccelerator.enable="1"
    eaccelerator.optimizer="1"
    eaccelerator.check_mtime="1"
    eaccelerator.debug="0"
    eaccelerator.filter=""
    eaccelerator.shm_max="0"
    eaccelerator.shm_ttl="0"
    eaccelerator.shm_prune_period="0"
    eaccelerator.shm_only="0"
    eaccelerator.compress="1"
    eaccelerator.compress_level="9"

    這樣就完成 php.ini 的設定了。

    3.4 apache.conf

    這個有點複雜,實在很難詳述。可以參考一下 這篇,寫的非常詳細,可以慢慢調整設定,來讓你的 apache2 發揮最大的效能。

    3.5 Modules of Apache

    在 apache2 的設定很特別,你可以在 「/etc/apache2/mods-available」下面看到你可以使用的 Modules,如果你要啟用,請「ln -s」到「/etc/apache2/mods-enables」下面去。這邊我使用了:

    # ln -s /etc/apache2/mods-available/php4.conf  /etc/apache2/mods-enabled/
    # ln -s /etc/apache2/mods-available/php4.load /etc/apache2/mods-enabled/
    # ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/

    這樣等下重開 apache2 之後,就會啟用這些個模組了。

    3.6 VirtualHost

    在 VirtualHost 方面,也是類似前面,到「/etc/apache2/sites-available 」建立、設定。再「ln -s」到「/etc/apache2/sites-enabled 」下面去。這樣重開後就會啟用這些設定了。

    3.7 MySQL

    # mysql mysql

    正常應該就會進入 MySQL 的 MySQL 這個資料庫中。利用:

    mysql> UPDATE user SET password=password('你的密碼') where user='root';

    來設定 root 的密碼,接著:

    mysql> FLUSH PRIVILEGES ;
    mysql> exit ;

    這樣就完成密碼的設定了。

    最後可以依照需要去調整「/etc/my.cnf」裡面的 cahce 等等的值。

    3.8 Restart

    這些都完成後,就可以重新啟動這幾個服務:

    # /etc/init.d/mysql  restart
    # /etc/init.d/apache2  restart

    這樣就完成了。

    3.9 TEST

    當然最後就是要來測試一下剛剛安裝的這些是否都正常,phpinfo一下是一定要的:

    <?
    phpinfo();
    ?>

    這個可以用來檢查主機的資訊、安裝的模組是否都正常等。除了這個,因為裝了 eAccelerator,當然要來檢查看看:

    <?
    eaccelerator();
    ?>

     

    而這個在之後可以用來檢查快取了哪些頁面、被 hit 幾次、清空等等,還滿方便的。

    4. 其他 

    接著當然是要裝一些其他的軟體了,例如 pure-ftpd 等等,這些都是自己爽就好,哈。

    5. 裝軟體

    這些都好了,就可以開始把軟體裝起來、MySQL 倒進來等等。 

     

    enjoy it :) 



Leave A Comment:













   



4 迴響 of "[Debian] 買 VPS 後的設定 - 基本調整、Apache、PHP、MySQL 等等"

feelexitRe:VPS 的後續調整 By feelexit @ 2007 元月 09, 08:52 :

good article. I can only type simplfied chinese, not sure if you can read it. I just type in english.

quick question: do you have ubuntu GUI installed or just completely server version.

I would like to know how you installed yours.

again, great post.

ajer001Re:VPS 的後續調整 By ajer001 @ 2007 元月 10, 05:39 :

你好,我可以閱讀簡體中文,所以下次放心留言吧!

我的VPS是主機商安裝的,所以我並不清楚。
不過之前在家裏安裝的時候,是使用 net Install cd 來安裝基本環境的。

而且,我想你可能誤會了,哈。我的vps用的是debian。

yjchenRe: [Debian] 買 VPS 後的設定 - 基本調整、Apache、PHP、MySQL 等等 By yjchen @ 2008 八月 04, 12:26 :

我想請問一下,以中華電信 ADSL 與 VPS 連結,VPS 的 upload rate 大約是多少?
因為我需要一台機器可以超過 upload rate: 10Mbps

ajer001Re: [Debian] 買 VPS 後的設定 - 基本調整、Apache、PHP、MySQL 等等 By ajer001 @ 2008 八月 04, 12:54 :

feelexit :
你可以打簡體中文沒關係的 :)

拿來當Server的,我通常都沒有裝 X Window (GUI),感覺比較省資源。而且這台主機是VPS,裝 GUI 也不見得好用 :)