歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

Linux下APACHE&PHP&MYSQL&CGI修改版

根據一個自稱自己經驗所得的混蛋文章改的 
許多文章結合起來,嘿嘿 
MOD_PERL,FASTCGI那一欄我沒有調試,因為不喜歡CGI。CHMOD mysql那一欄兩次都是卡住過,如果有問題,可以來回做做實驗。 

Linux下apache+mysql+PHP^^^^^^^^(修改版) 

唉,網上如此多的文章,版本居然這麼多,並且多多少少存在著一些毛病,解決毛病及錯誤用了自己一天的時間,修改些錯誤的地方,最後的版本就是下面的了 


apache1.3.24+php4.21+mysql3.23.49+openssl+mod_ssl+mod_perl+mod_fastcgi 
這裡要注意的是apache 1.3x可以用靜態php模塊 
2.x.x目前還只可以用動態,並且沒有windows版本 

本安裝所需要的軟件包: 
apache_1.3.24.tar.gz 
php-4.2.1.tar.gz 
mysql-3.23.49.tar.gz 
mod_fastcgi-2.2.12.tar.gz 
mod_perl-1.26.tar.gz 
mod_ssl-2.8.8-1.3.24.tar.gz 
openssl-0.9.6d.tar.gz 

雖然 apache 版本已到 2.0.36,但從其它資料看好像並未真正走出試驗階段,而且最新的 php 4.21 目前也無法編譯為 apache 2.0.xx 的靜態模塊。而本安裝采用的是編譯為靜態模塊,因此沒有采用新版 apache。 

################################################### 


安裝: 

將這些包放在一個目錄下,如 /usr/local/src 
然後解壓縮這些包: 
tar xzvf apche_1.3.24.tar.gz 
tar xzvf php-4.2.1.tar.gz 
tar xzvf mysql-3.23.49.tar.gz 
tar xzvf mod_fastcgi-2.2.12.tar.gz 
tar xzvf mod_perl-1.26.tar.gz 
tar xzvf mod_ssl-2.8.8.-1.3.24.tar.gz 
tar xzvf openssl-0.9.6d.tar.gz 

解壓縮完成後將會看到在當前目錄下已經出現了解壓縮後生成的文件夾 

現在開始配置編譯: 

1. 首先安裝 MySQL 
需要PTH噢,別忘記 
1) 建立 MySQL 用戶組: 

groupadd mysql 
useradd -g mysql mysql 

2) 配置並編譯 

cd mysql-3.23.49 
./config --prefix=/usr/local/mysql 

如果想使用 MySQL 事務的話,可以加上 --with-berkeley-db,即: 

./configure \ 
--prefix=/usr/local/mysql \ 
--with-berkeley-db 

配置完成後就可以編譯了 

3) 編譯安裝 
編譯很簡單,只有一個命令 

make 

然後安裝 

make install 

4) 初始化 
安裝結束後還沒完,還有幾個步驟,首先是初始化數據庫 

scripts/mysql_install_db 

然後是設置權限 

chown -R root /usr/local/mysql 
chown -R mysql /usr/local/mysql/var 
chgrp -R mysql /usr/local/mysql 

然後將啟動 MySQL 所需的 my.cnf 拷貝到 /etc 目錄下 

cp /usr/local/mysql/share/mysql//my-medium.cnf /etc/my.cnf 



(其中還有三個文件,my-small.cnf、my-large.cnf和my-huge.cnf, 
是對於機器性能而言的,最後一個適用於2GB左右內存 

5) 啟動 

/usr/local/mysql/bin/safe_mysqld --user=mysql & 

你可以看到啟動信息,這時應該給 root 用戶設置密碼了,因為安裝後默認是沒有密碼的 

6) 為 root 設置密碼 

/usr/local/mysql/bin/mysqladmin -u root -p passWord your_new_password 

注意,第一個 password 是命令的參數,依原樣鍵入,而 your_new_password 就是你要設置的新密碼。例如,要將 root 密碼設為123456,那麼這樣輸入命令: 

/usr/local/mysql/bin/mysqladmin -u root -p password 123456 

回車後系統會提示你輸入當前密碼,應該是像下面這樣: 

Enter password: 

因為此時還沒有密碼,所以直接回車即可,這時沒有任何提示返回提示符狀態,而密碼已經設置完成。此時可以通過關閉 MySQL 服務驗證密碼是否生效: 

/usr/local/mysql/bin/mysqladmin -u root -p shutdown 
Enter password:123456 

系統提示 MySQL 已關閉: 

020531 13:14:35 mysql ended 
[1]+ Done /usr/local/mysql/bin/safe_mysqld --user=mysql 

########################################################################## 

2. 安裝 apache + php + 其它模塊 

先來配置模塊 

cd /usr/local/src 

1) 將 fastcgi 目錄移至 apache 的模塊目錄下並更名為 fastcgi 

mv mod_fastcgi-2.2.12 apache_1.3.24/src/modules/fastcgi 

2) 配置並編譯 openssl 模塊 

cd /usr/local/src/openssl-0.9.6d 
sh config 
make 
make test 

3) 配置 mod_ssl 

cd /usr/local/src/mod_ssl-2.8.8-1.3.24 
./configure --with-apache=../apache_1.3.24 

4) 配置編譯並安裝 mod_perl 

cd /usr/local/src/mod_perl-1.26 
perl Makefile.PL \ 
APACHE_SRC=../apache_1.3.24/src \ 
DO_HTTPD=1 \ 
USE_APACI=1 \ 
PRE_HTTPD=1 \ 
EVERYTHING=1 

然後編譯 

make 

接著測試編譯結果 

make test 

安裝 

make install 

5) 配置 apache 

cd /usr/local/src/apache_1.3.24 
SSL_BASE=../openssl-0.9.6d ./configure \ 
--prefix=/usr/local/apache \ 
--enable-module=ssl \ 
--activate-module=src/modules/fastcgi/libfastcgi.a \ 
--activate-module=src/modules/perl/libperl.a 

現在已初步完成了 apache 的配置,接下來開始搞定 php 

6) 配置編譯安裝 php-4.2.1 

cd /usr/local/src/php-4.2.1 
./configure \ 
--with-mysql=/usr/local/mysql \ 
--with-apache=../apache_1.3.24 \ 


--enable-track-vars \ 
--enable-trans-sid \ 
--with-gd 

然後編譯 

make 

安裝 

make install 

7) 重新配置並編譯安裝 apache 

cd /usr/local/src/apache_1.3.24 
./config.status \ 
--activate-module=src/modules/php4/libphp4.a 

編譯 

make 

安裝 

make certificate 
make install 

8) 最後設置 

cd /usr/local/src/php-4.2.1 
cp php.ini-dist /usr/local/lib/php.ini 

你可以按需要編輯 php.ini 

編輯 /usr/local/apache/conf 目錄下的 httpd.conf 

找到: 
<IfModule mod_dir.c> 
DirectoryIndex index.Html 
</IfModule> 

改為: 
<IfModule mod_dir.c> 
DirectoryIndex index.html index.php 
</IfModule> 

在文件中增加一條: 
AddType application/x-httpd-php .php 

設置結束。 

9) 調試 

這一塊我就不用說了吧 

系統啟動時加載mysql 
cp /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysql 
cd /etc/rc.d/rc3.d 
ln -s ../init.d/mysql S70mysql 


系統啟動時加載apache 
cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd 
cd /etc/rc.d/rc3.d 
ln -s ../init.d/httpd S80httpd 

10)不妨再加上ZEND加速器,挺管用的 
最新的1。31版本,不管是WIN下的還是LINUX下的,根據提示一步步來就可以了 
LINUX下是 ./install.sh, 嘿嘿,簡單吧



make install 

8) 最後設置 

cd /usr/local/src/php-4.2.1 
cp php.ini-dist /usr/local/lib/php.ini 

你可以按需要編輯 php.ini 

編輯 /usr/local/apache/conf 目錄下的 httpd.conf 

找到: 
<IfModule mod_dir.c> 
DirectoryIndex index.html 
</IfModule> 

改為: 
<IfModule mod_dir.c> 
DirectoryIndex index.html index.php 
</IfModule> 

在文件中增加一條: 
AddType application/x-httpd-php .php 

設置結束。 

9) 調試 

這一塊我就不用說了吧 

系統啟動時加載mysql 
cp /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysql 
cd /etc/rc.d/rc3.d 
ln -s ../init.d/mysql S70mysql 


系統啟動時加載apache 
cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd 
cd /etc/rc.d/rc3.d 
ln -s ../init.d/httpd S80httpd 

10)不妨再加上ZEND加速器,挺管用的 
最新的1。31版本,不管是WIN下的還是LINUX下的,根據提示一步步來就可以了 
LINUX下是 ./install.sh, 嘿嘿,簡單吧



Copyright © Linux教程網 All Rights Reserved