[Debian] 買 VPS 後的設定 - 基本調整、Apache、PHP、MySQL 等等
| 六月 08, 2006 | 4個迴響 | 沒有引用 | 3930 reads | Size: L, M, S | Edit: P, C || 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頁面。根據我使用的結果,我覺得效果很大,強烈建議要裝!更詳細的內容可以參考這兩篇:1、2。(本段原始出處為 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 :)
隨機文章:
» my VPS - LeeWare
» 虛擬主機 Part.2 - 挑選心得分享
» 廠商誠信
» Skype USB Phone
» 為甚麼還要花錢買 Office?


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.