1、簡介php
什麼是LAMP LAMP是一種Web網絡應用和開發環境,是Linux, Apache, MySQL, Php/Perl的縮寫,每個字母表明瞭一個組件,每一個組件就其自己而>言都是在它所表明的方面功能很是強大的組件。 LAMP這個詞的由來最先始於德國雜誌「c't Magazine」,Michael Kunze在1990年最早把這些項目組合在一塊兒創造了LAMP的縮寫字。這些>組件並非開始就設計爲一塊兒使用的,可是,這些軟件都是開源的,能夠很方便的隨時得到並無償使用,這就致使了這些組件常常在一塊兒使 用。這些組件的兼容性也在不斷完善,爲了改善不一樣組件之間的協做,已經建立了某些擴展功能,在一塊兒的應用情形變得很是普便,於是成 爲目前最流行的web應用基礎架構。html
LAMP的組件 平臺由四個組件組成,呈分層結構,每一層都提供了整個架構的一個關鍵部分: Linux:Linux 處在最底層,提供操做系統。它的靈活性和可定製化的特色意味着它可以產生一種高度定製的平臺,讓其它組件在上面運 行。其它組件運行於Linux 之上,可是並不必定侷限於 Linux,也能夠在 Microsoft Windows, Mac OS X 或 UNIX上運行。 Apache:Apache位於第二層,它是一個Web 服務平臺,提供可以讓用戶得到 Web 頁面的機制。Apache 是一款功能強大、穩定、可支撐關>鍵任務的Web服務器,Internet 上超過 50% 的網站都使用它做爲 Web 服務器。 MySQL:MySQL 是最流行的開源關係數據庫管理系統,是LAMP的數據存儲端。在 Web 應用程序中,全部賬戶信息、產品信息、客戶信息>、業務數據和其餘類型的信息都存儲於數據庫中,經過 SQL 語言能夠很容易地查詢這些信息。 PHP/Perl:Perl是一種靈活的語言,特別是在處理文本要素的時候,這種靈活性使Perl很容易處理經過 CGI接口提供的數據,靈活地運>用文本文件和簡單數據庫支持動態要素。PHP 是一種被普遍應用的開放源代碼的多用途腳本語言,它可嵌入到 HTML中,尤爲適合 web 開發 。可使用 PHP 編寫能訪問 MySQL 數據庫中的數據和 Linux 提供的一些特性的動態內容。node
2、系統環境mysql
系統平臺: CentOS release 6.3 (Final)linux
Apache 運行時:apr-1.4.6.tar.gz
apr-util-1.5.2.tar.gz (http://apr.apache.org/download.cgi)c++
Apache版本:httpd-2.4.4.tar.gz (http://httpd.apache.org/download.cgi)web
Mysql 版本: mysql-5.6.11.tar.gz(http://dev.mysql.com/downloads/mirror.php?id=412388)sql
Php版本: php-5.4.14.tar.gz(http://php.net/downloads.php)shell
3、安裝前準備數據庫
一、庫文件準備 在安裝PHP以前,應先安裝PHP5須要的最新版本庫文件,例如libxml二、libmcrypt以及GD2庫等文件。安裝GD2庫是爲了讓PHP5支 持GIF、 PNG和JPEG圖片格式,因此在安裝GD2庫以前還要先安裝最新的zlib、libpng、freetype和jpegsrc等庫文件。並且中間還會穿插安裝一些軟>件,讀者能夠按照本節提供的順序安裝。
(注意:一下庫可能已經本機安裝,查看方法rpm -qa | grep 庫名稱 好比查看是否安裝libxml2庫,命令:rpm -qa | grep libxml2 若是相關的庫不存在,能夠下載下面到庫進行編譯安裝,或者使用yum 進行安裝 好比對於libxml2庫,使用yum安裝: yum search libxml2 #查詢相關庫對應的rpm文件 輸出以下: libxml2.i686 : Library providing XML and HTML support libxml2-devel.i686 : Libraries, includes, etc. to develop XML and HTML applications
yum install libxml2.i686 ibxml2-devel.i686 #安裝
) autoconf-2.61.tar.gz
freetype-2.3.5.tar.gz
gd-2.0.35.tar.gz
jpegsrc.v6b.tar.gz
libmcrypt-2.5.8.tar.gz
libpng-1.2.31.tar.gz
libxml2-2.6.30.tar.gz
zlib-1.2.3.tar.gz
ncurses-5.8.tar.gz
cmake-2.8.4.tar.gz
ZendOptimizer-3.2.6-linux-glibc21-i386.tar.gz phpMyAdmin-3.0.0-rc1-all-languages.tar.gz
二、安裝gcc、gcc-c++編譯器
用gcc -v 命令檢查安裝時使用的編譯工做是否存在,若是提示該命令不存在則經過yum進行安裝: yum install gcc和yum install gcc-c++安裝.
三、卸載默認的低版本環境
目前發行的Linux操做系統版本中,若是選擇默認所有安裝,就已經安裝了LAMP環境,可是版本相對都比較低。咱們能夠再安裝一個LAMP環境和原來的並存,可是這樣作沒有必要,由於同時只能開啓一個LAMP環境。所要咱們要在安裝以前,先應檢查一下系統中是否已經安裝了 低版本的環境,若是已經安裝過了,中止原來的服務運行,或者把原來的環境卸載掉
a. 卸載Apache
#rpm -qa | grep httpd
說明:檢查是否安裝了httpd軟件包
# rpm -e httpd-2.2.3-63.el5.centos --nodeps
說明:卸載軟件包, --nodeps 若是有連帶關係,也強制卸載
# cd /etc/httpd/
# rm -rf *
說明:到原來的apache安裝目錄下,將其全部的安裝目錄和文件都刪掉
b. 卸載Mysql # rpm -qa | grep mysql
# rpm -e mysql-5.0.77-4.el5_4.2 --nodeps
說明:卸載mysql
c. 卸載Php # rpm -qa | grep php
# rpm -e php-common-5.1.6-27.el5 --nodeps
# rpm -e php-ldap-5.1.6-27.el5 --nodeps
# rpm -e php-cli-5.1.6-27.el5 --nodeps
# rpm -e php-5.1.6-27.el5 --nodeps
說明:卸載PHP
四、關閉selinux,清空防火牆規則
五、使用ssh shell將windows下的13個源碼包上傳到/usr/local/src
六、解包
編寫一個shell腳本tar.sh進行解包。
#!/bin/sh
cd /usr/local/src ls *.tar.gz > ls.list
for TAR in cat ls.list
do tar -zxvf $TAR done
執行腳本tar.sh進行解包
4、安裝LAMP
一、安裝各個庫,可使用上面介紹的yum方法安裝,若是沒有找到相關到庫,能夠下載源碼用以下方法安裝,以libxml2爲例,其餘相似
# cd /usr/local/src/libxml2-2.6.30
# ./configure --prefix=/usr/local/libxml2
# make && make install
二、安裝Apache運行時
# cd /usr/local/src/apr-1.4.6
# ./configure && make && make install
# cd /usr/local/src/apr-util-1.5.2
# ./configure && make && make install
說明:這兩個庫安裝後到路徑默認爲/usr/local/apr/bin,後面編譯apache會用到該路徑。
三、安裝Apache
# cd /usr/local/src/httpd-2.2.9
# ./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd --with-apr= /usr/local/apr/bin --with-apr-utl= /usr/local/apr/bin --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support
# make && make install
三、配置Apache
啓動Apache # /usr/local/apache2/bin/apachectl start
查看80端口是否開啓 # netstat -tnl|grep 80
關閉Apache # /usr/local/apache2/bin/apachectl stop
訪問Apache服務器
添加自啓動
# echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.local
四、安裝Mysql
新版本mysql使用cmake工具進行預編譯配置,須要先安裝cmake工具,能夠經過源碼安裝, 或者經過命令安裝:yum install cmake
添加一個mysql標準組
# groupadd mysql
添加mysql用戶並加到mysql組中
# useradd -g mysql mysql
# cd /usr/local/src/mysql-5.0.41
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DINSTALL_DATADIR=/usr/local/mysql/data
# make && make install
繼續下面的命令 cd /usr/local/mysql
chown -R mysql . #將文件的全部屬性改成root用戶 chgrp -R mysql . #將組屬性改成mysql組 ./scripts/mysql_install_db --user=mysql #用mysql用戶建立受權表 chown -R root .
下面的命令是可選的,將mysql的配置文件拷貝到/etc
cp support-files/my-default.cnf /etc/my.cnf
啓動mysql bin/mysqld_safe --user=mysql &
啓動mysql,看是否成功
netstat -tnl|grep 3306
將mysql的啓動服務添加到系統服務中
cp support-files/mysql.server /etc/init.d/mysqld 如今可使用下面的命令啓動mysql
service mysqld start
中止mysql服務
service mysqld stop
重啓mysql服務
service mysqld restart
五、安裝PHP
# cd /usr/local/src/5.4.14
# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets
# make && make install
六、配置PHP
建立配置文件
# cp php.ini-production /usr/local/php/etc/php.ini
使用vim編輯apache配置文件
# vim /etc/httpd/httpd.conf
添加這一條代碼
Addtype application/x-httpd-php .php .phtml
重啓Apache
# /usr/local/apache2/bin/apachectl restart
七、測試
編寫info.php文件,查看php配置詳細
# vim /usr/local/apache2/htdocs/info.php
<?php phpinfo(); ?>