Linux+Apache+PHP+Mysql快速安裝
沒什麼東西,隻是個人筆記。在一個不知名的Linux版本上的裝的,看核心版本,好像是RH9。Linux下沒有Ports,但是有yum,隻是系統沒裝,于是全部手工安裝。
下載下傳基本核心包
apache_1.3.34.tar.gz
mysql-4.1.16.tar.gz
php-4.4.1.tar.gz
每個包都解包:
tar zxvf xxxx.tar.gz
安裝Apache
apache預設程序無法滿足我們高負荷的要求,修改同時開啟程序數最大為2048,也可以自己手動修改
cd ./apache_1.3.34
mv src/include/httpd.h src/include/httpd.h.orig
sed -e "s/256/2048/" src/include/httpd.h.orig > src/include/httpd.h
./configure --prefix=/usr/local/apache --enable-module=so --enable-module=rewrite
make
make install
Apache其他設定:通路權限、日志、虛拟目錄、虛拟主機、phpMyadmin等等
安裝Mysql
cd ./mysql-4.1.16
./configure --prefix=/usr/local/mysql
useradd mysql
chsh -s /sbin/nologin mysql
scripts/mysql_install_db
cd /usr/local/mysql
chgrp -R mysql ./*
cd ./var
chgrp -R mysql ./*
chown -R mysql ./*
/usr/local/mysql/bin/mysqld_safe --user=mysql &
如果沒有無錯應該啟動,有錯誤去看 /usr/loval/mysql/var/xxxx.err
另外,如果可能以後資料會比較多的話,那麼建議把資料庫放到一個空間比較大的分區,然後ln一個軟連結過去。
比如我們的分區 /data 是個有40G空間的分區,那麼我們想把Mysql的資料庫放裡面,那麼我們就可以先關閉mysql:
/usr/local/mysql/bin/mysqladmin shutdown
mv /usr/local/mysql/var /data
ln -s /data/var /usr/local/mysql/var
然後啟動mysql,發現運作正常,但是我們實際的資料已經在 /data/var 下面了。
mysql預設的配置檔案是在資料庫目錄 /usr/local/mysql/var下面滴,是以我們複制一個配置檔案過去:
cp /usr/local/mysql/share/mysql/my-medium.cnf /usr/local/mysql/var/my.cnf
重新開機生效果,以後修改配置直接修改/usr/local/mysql/var/my.cnf
Mysql其他設定:打開日志、資料同步、監控SQL執行速度、其他高負載設定
安裝PHP
安裝php子產品支援的包
下載下傳包請自行google,或者任何途徑,版本應該比以下的新。
gettext-0.14.5.tar.gz <getText>
libiconv-1.10.tar.gz <iconv>
expat-2005-12-23.tar.gz <xml>
zlib-1.2.3.tar.gz <zlib>
libxml2-2.6.22.tar.gz <dom/xml>
jpegsrc.v6b.tar.gz <gd>
libpng-1.2.8-config.tar.gz <gd>
freetype-2.1.10.tar.gz <gd>
curl-7.15.1.tar.gz <curl>
以上包都執行:
tar zxvf xxxxx.tar.gz
編譯:
./configure --prefix=/usr/local
make
make install
注意,jpegsrc.v6b.tar.gz必須不一樣:
make install-lib
編譯php
./configure --prefix=/usr/local/php --with-apxs=/usr/local/apache/bin/apxs /
--with-iconv --enable-mbstring --with-gd --with-jpeg-dir=/usr/local /
--with-png-dir=/usr/local --with-freetype-dir=/usr/local --with-ttf --enable-gd-native-ttf /
--with-zlib-dir=/usr/lib --with-dom=/usr/local --with-mysql=/usr/local/mysql /
--with-curl=/usr/local
make
make install
無誤則成功,否則檢查過程或包是否裝全
修改 /usr/local/apache/conf/httpd.conf,添加:AddType application/x-httpd-php .php
寫一檔案 /usr/local/apachen/htdocs/phpinfo.php,裡面加入:
<?phpinfo();?>
啟動apachen: /usr/local/apachen/bin/apachectl start
通路:http://ip/phpinfo.php
無誤則安裝完成。
============================================
附:PHP包介紹
curl-7.13.1_1 Non-interactive tool to get files from FTP, GOPHER, HTTP(S)
expat-1.95.8 XML 1.0 parser written in C
libxml Libxml2 is the XML C parser and toolkit developed for the Gnome project
gettext-0.14.1 GNU gettext package
jpeg-6b_3 IJG's jpeg compression utilities
libjpeg libjpeg 軟體包包含 jpeg 庫. 這些庫使圖形檔案在聯合圖象專家組的标準上壓縮.
libpng libpng is the official PNG reference library.
libiconv-1.9.2_1 A character set conversion library
libtool-1.5.10_1 Generic shared library support script (version 1.5)
m4-1.4.1 GNU m4
openldap-client-2.2.23 Open source LDAP client implementation
png-1.2.8_1 Library for manipulating PNG images