天天看點

LAMP

lamp介紹

       linux+apache+mysql+php

 安裝前把所有rpm的httpd,mysql,php,等rpm包全部移除

系統所安裝一些必要的軟體

       gd-devel

bzip2-devel

       zlib-devel

       libjpeg-devel

       libpng-level

       libtiff-devel

       freetype-devel

       openssl-devel

       libxmlz-devel

       gettext-devel

編譯說使用的軟體

       gcc

       gcc-c++

       ncurses-devel

lamp所需的軟體

       htpd-2.2.21.tar.bz2       (apache)

gd-2.44                       (gd庫是一個開源的圖像處理庫,支援 png/jpeg/gif以及其

他格式的圖像。gd一般被用來建立圖表、圖形、縮略圖以及其他圖像相關的處理操作)

       mysql

php

apache安裝

       #tar jxvf httpd-2.2.21.tar.bz2 –c /usr/local/src/

       #cd !$

       #cd httpd-2.2.21.

       #./configure –prefix=/usr/local/apache2.2 --with-ssl --enable-ssl --enable-so \

--enable-rewirte --enable-threads   --with-mpm=worker (如果不指定路徑,預設也會安裝/usr/local下)

              --enable-so 啟用dso機制,靜态子產品和動态子產品

--enable-rewirte 允許重寫規則以及url重定向

--with-mpm=worker 預設是prefork,選擇worker伺服器模式主要是改善apache的性能,apache的程序數大大減小,負載也大大降低,運作平穩。

#make&&make install

       将apache加入到系統服務中

       # cp /apache2.2/bin/apachectl /etc/rc.d/init.d/httpd

#vi /etc/rc.d/init.d/httpd

# chkconfig: 2345 10 90

# description: activates/deactivates apache web server

添加這兩行(包括#号),在2345運作級别中運作,下面是將 httpd 強制支援 chkconfig添加到啟動服務中(說明:開啟/關閉apache web伺服器),如不添加,下面一條指令則不支援

       #chkconfig --add httpd

#chkconfig –level 35 httpd on

#/etc/rc.d/init.d/httpd start    

# /usr/local/httpd/bin/apachectl –t 測試apache是否正常運作

syntax ok

mysql安裝

#tar zxvf mysql-5.1.52.tar.gz –c /usr/local/src/mysql-5.1.52

#cd !$

#cd mysql-5.1.52

#./configure –prefix=/usr/local/mysql \

--with-extra-charsets=gbk,gb2312,utf8 \     與額外的字元集

--enable-thread-safe-client            允許線程安全(為了配合apache的worker模式,如不這樣,安裝php可能會報錯)

安裝完成

#export path=$path:/usr/local/mysql-5.1.52/bin

#useradd mysql

#cd /usr/local/mysql/

#chown –r mysql:mysql *

#./bin/mysql_install_db --user=mysql

#cp /sharp/mysql/my-medium.cnf /etc/my.cnf    複制配置檔案

#cp /sharp/mysql/mysql.server /etc/rc.d/init.d/mysqld複制啟動檔案

#chkconfig --add mysqld

#chkconfig --level 3 mysqld on

#/etc/init.d/mysqld/ start

#mysqladmin -u root password '123456'

apache整合php

       gd庫安裝

       #tar zxvf gd-2.44.tar.gz

       #cd gd-2.44

       #./configure --prefix /usr/local/gd-2.44 \

              --with-freetype=/usr/local/freetype/ \

              --with-png=/usr/local/libpng/ \

              --with-jpeg=/usr/local/jpeg/ \

       #make&&make install

       php安裝

       #tar jxvf php-5.2.10.tar.bz2 –c /usr/local/src

       #./configure –prefix=/usr/local/php-5..2.10 \

           --with-gd2=/usr/local/gd2.44 \

           --with-apxs2=/usr/local/apache/bin/apxs \

           --with-mysql=/usr/local/mysql-5.1.52

       #make

       #make install

       #cp php.ini-dist /usr/local/php/lib/php.ini

修改apache主配置檔案

       #vi /usr/local/apache/conf/http.conf

              1、在<ifmodule mime_module> <\ifmodule>之間

              addtype application/x-httpd-php .php 添加一行

              2、在driectoryindex index.htm   之間

              index.php      支援php

驗證之前所安裝的

       #/usr/local/apache/bin/apachectl –t 檢查配置檔案的文法

       檢視/usr/local/apache/modules/目錄     自動生成libphp5.so動态子產品檔案

       檢視/usr/local/apache/conf/httpd.conf檔案

              loadmodule php5_module modules/libphp2.so    自動添加這一行

       在網頁目錄中編輯一個php腳本,檢視更詳細的内容

              <?

              phpinfo ();

              ?>

       #/etc/init.d/httpd start     啟動

       在浏覽器中輸入http://127.0.0.1/index.php

[root@localhost modules]# /etc/init.d/httpd restart

httpd: syntax error on line 53 of /usr/local/httpd/conf/httpd.conf: cannot load /usr/local/httpd/modules/libphp5.so into server: /usr/local/httpd/modules/libphp5.so: cannot restore segment prot after reloc: permission denied

整合完成後,不能重新開機apache提示以上錯誤,是selinux引起的關閉selinux,重新開機

繼續閱讀