從零開始編譯安裝LAMP(上)

1、Linux平臺架構(虛擬機安裝CentOS6.3)(--上)

說明:操做系統使用centos6.3,64位架構。因爲生產環節安裝Linux平臺都是使用最小化安裝,所以此次也是採用最小化安裝。php

1.打開虛擬機,選擇建立新的虛擬機--而後選擇典型(推薦)安裝,點擊下一步html

2.選擇「稍後安裝操做系統」java

3.點擊下一步,而後選擇本身須要安裝的操做系統和系統版本。我安裝的是64位的CentOS6.3,以下圖同樣選擇。mysql

4.點擊下一步,以後會出現給虛擬機命名,以及選擇虛擬機位置。在此處就是讓他叫作CentOS6.3_64,位置按照你的須要選擇。以下圖:linux

5.配置好之後,點擊「下一步」,給虛擬機分磁盤,這裏咱們能夠隨便分,即便查過物理磁盤大小也是能夠的web

6.點擊「下一步」,而後點擊完成。如今就回在虛擬機中出現剛剛建立的Centos6.3_64,可是如今僅僅只是一個框架,咱們此時能夠修改操做系統硬件環境配置,好比內存大小,處理器數量以及網絡模式等等。sql

7.雙擊設備下面的子選項能夠修改單個虛擬物理硬件的配置,這裏咱們主要修改一下網絡適配器的模式,讓他以橋接的方式存在,這樣就至關於一個真實的物理主機,IP地址也是獨立的,和主機是在同一個網段的。shell

8.點擊肯定之後,就能夠掛在光盤鏡像了。如今雙擊CD/DVD(IDE)選項。而後選擇使用ISO鏡像文件,點擊瀏覽找到鏡像位置,而後點擊肯定就能夠進行鏡像文件安裝了。apache

9.如今就能夠點擊開啓此虛擬機,而後進行系統配置。這個咱們分爲系統安裝,下節再講。windows

1、Linux平臺架構(虛擬機安裝CentOS6.3)(--下)

1.打開vmware,點擊開啓此虛擬機

2.將鼠標放進虛擬機界面,點擊一下,發現指針在虛擬機裏面,使用上下箭頭選擇條目,咱們選擇第一項,按ENTER鍵選擇,進入安裝。

3.等待一會會進入Disc Found階段,這時咱們按下tab鍵,選擇SKIP跳過自檢,而後按下ENTER進行安裝(生產環境你們可使用OK選項進行檢測,會花費一段時間,在此就不描述了,有興趣的朋友能夠試着作一下)。

4.鼠標點擊右下角的next,進入系統環境配置。接下來會讓咱們選擇系統語言,以及鍵盤方式,此處咱們選擇English語言,鍵盤習慣選擇U.S.English,點擊NEXT,繼續選擇設備類型。

5.咱們選擇基本存儲類型(Basic Storage Devices),而後點擊NEXT,此時會提示是否抹除磁盤數據,選擇Yes,discard any data。

6.輸入Hostname,給本身系統取個名字,咱們就叫作centos1,而後選擇下一步。

7.接下來會讓咱們選擇系統時區,咱們選擇Asia/Shanghai,注意勾選上下面的System clock uses UTC,點擊下一步後,會提示輸入密碼。(若是密碼設置的過於簡單,會跳出提示,顯示密碼太弱,這個時候選擇Use Anyway,固然咱們是由於測試環境,能夠這樣,若是是生產環境,千萬不可設置過於簡單的密碼)。

8.在完成密碼設置後,會進入磁盤分區,通常生產環境都會選擇自定義分區,即Create Custom Layout,選擇好之後點擊下一步,會跳出分區頁面。選擇create,而後選擇標準分區Standard Partition,通常第一個分區要給/boot分區,即掛載點選擇/boot,文件系統類型選擇ext4,大小給200M就足夠用了。點擊OK,建立該分區成功。

9.下面要建立swap分區,這個實際上是至關於windows中的虛擬內存,通常咱們給內存的2倍,固然你內存要是4G以上,給個0.5或者1倍就足夠了。個人是1G內存,所以我給swap2G內存。繼續選擇Create,依然選擇建立標準分區,接着在文件系統選擇swap,大小選擇2000M,點擊OK進行建立。

10.而後依次建立根分區掛載點/,和/usr/local掛載點,分別給50G,由於如今只是先教着你們裝系統,因此有關磁盤陣列和邏輯卷的建立暫時就不說了,看到咱們還留有近100G的空間,就是留着之後建立邏輯卷和磁盤陣列的,先預告一下。總之建立好之後,磁盤分區狀況以下:

11.點擊next後會彈出是否格式化的提示,點擊是,而後會提示是否將配置寫入磁盤,選擇write changes to disk,接着系統開始安裝,首先會提示將boot分區寫入/dev/目錄下的某個分區上,點擊NEXT便可進入安裝。(若是你下載的系統鏡像是徹底版的話,能夠選擇最小化安裝,由於我下載的是精簡版,也就是最小化鏡像,所以會直接跳到安裝界面,自動安裝)。稍等一會,安裝好之後點擊右下角的reboot,重啓以後就表示精簡的Linux系統就安裝好了。重啓以後能夠進入登錄界面,用戶名爲root,密碼就是咱們以前設置的,輸入之後就能夠進入操做系統了。

備註:從虛擬機中將鼠標釋放出來,須要同時按下ctrl和Alt鍵。

2、Linux操做系統簡單網絡配置

1.啓動虛擬機上的Linux系統以後,默認狀況下網卡是沒有被激活的。所以第一步就是配置網卡信息。使用vi編輯器,直接修改配置文件。(vi編輯器的使用本身百度吧,目前只要知道編輯、修改、保存便可)。修改網卡配置文件:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

修改爲以下,注意IP地址和你主機在同一個網段內,且不要和其餘主機衝突便可。

DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:25:CC:A1"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="bf4dee67-7ebb-46cb-97b4-209d5d6838ca"
IPADDR="192.168.1.214"
NETMASK="255.255.255.0"
GATEWAY="192.168.1.1"
PEERDNS="no"

如今就能夠激活網卡了,激活命令:service network start,若是網卡比較多的話,就不能夠這樣啓動了,而是使用ifconfig命令。

ifconfig 網卡名稱 [UP/DOWN]來啓動/關閉相關網卡。好比咱們要啓動當前的eth0網卡,只須要使用一下命令:ifconfig eth0 up,

網卡激活以後,如今ping baidu的域名仍是不行的,會提示不可知域名。這是由於咱們DNS沒有配置,簡單的方式在本機指定一下域名服務器地址,我習慣用本地的網關地址做爲DNS服務器地址,下面就能夠修改DNS配置文件來配置DNS解析。

2.修改DNS配置文件,這裏咱們在resolv.conf中修改。

vi /etc/resolv.conf  (添加一行)

nameserver 192.168.1.1

即把你的網關添加進去。

3.PING測試,能夠ping一下網關,測試網絡鏈接是否正常。

[root@centos1 ~]# ping -c 3 -w 3 baidu.com
PING baidu.com (180.149.132.47) 56(84) bytes of data.
64 bytes from 180.149.132.47: icmp_seq=1 ttl=50 time=38.5 ms
64 bytes from 180.149.132.47: icmp_seq=2 ttl=50 time=38.7 ms
64 bytes from 180.149.132.47: icmp_seq=3 ttl=50 time=41.7 ms
--- baidu.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2070ms
rtt min/avg/max/mdev = 38.593/39.715/41.768/1.462 ms

備註:在Linux系統上,ping命令若是不指定參數會一直ping下去,咱們能夠手動按下ctrl+c來終止,也能夠在ping命令啓動時加入參數來指定。好比-c指定ping的測試,-w指定等待時長。上例的ping -c 3 -w 3 baidu.com 就表示ping三次,等待3秒,二者任何一個知足就退出ping命令。

到此爲止,linux的網絡配置基本上就算簡單完成了

3、Apache的安裝(httpd的安裝)

Apache是一個開源項目組織,其開發的產品包括httpd,tomcat,Hadoop等,已是如今服務器架構的中堅力量。httpd是一種web服務器,也是全球使用最普遍的web服務器,這與其高效的性能和免費開源的性質有很大關係。今天咱們就來講一下企業中,手動編譯安裝httpd的方法與步驟。

1.爲了便於操做與管理,我習慣性使用xshell鏈接linux服務器,而後在/usr/local目錄下創建一個專門用於存儲第三方安裝包的文件,取名lampsoft。以下:

[root@centos1 ~]# mkdir /usr/local/lampsoft
[root@centos1 ~]# cd /usr/local/lampsoft/
[root@centos1 lampsoft]# ll
total 0

2.如今咱們就要使用xftp來從主機傳送文件了。點擊下圖中紅圈中的圖標,打開xftp,找中你須要上傳的文件路徑,選中這些文件,雙擊一下就能夠拖拽到相應的linux系統目錄下。本實驗室拖到/usr/local/lampsoft下。

3.等待上傳完畢便可進行安裝,安裝apache須要首先安裝兩個組文件——「Development Tools」、「Compatibility libraries」。咱們使用yum源安裝,centos直接提供yum源文件,只須要linux服務器能夠聯網,就能夠直接使用下載、安裝,很是方便。若是沒有聯網的朋友,則可使用本地yum源,配置方法可百度。

[root@centos1 lampsoft]# yum groupinstall "Development Tools"

會自動下載須要的安裝包以及依賴包。以下圖,一共須要安裝128個包,想一下若是沒有這個yum源,咱們何時能安裝好着128個包,即便運行LAMP環境不須要那麼多,可是工做量仍是很是大的。如今咱們只須要一個簡單的命令就能夠完成安裝。yum蒐集好文件包後會問咱們是否下載、安裝,咱們輸入Y就能夠。等待一會安裝成功就能夠了,再使用相同的方法安裝一下Compatibility libraries,固然也能夠和Development Tools一塊兒安裝,命令:yum groupinstall "Development Tools"  「Compatibility libraries」 -y(使用-y則不須要咱們輸入y確認,直接進行安裝。)

以下面就已經安裝完成:

4.如今咱們兩個組文件都已經安裝成功,還有兩個包須要安裝,即apr以及apr-util,這兩個是httpd的運行環境包,至關於java中的虛擬機,是模擬出一個httpd能夠運行的環境。咱們使用的安裝包apr-1.5.2.tar.gz 和 apr-util-1.5.4.tar.gz 。安裝方法:

1.tar xvf apr-1.5.2.tar.gz 

2.cd apr-1.5.2

3../configure --prefix=/usr/local/apr

安裝報錯:rm: cannot remove `libtoolT': No such file or directory,這個是由於configure文件中,有行代碼有問題,咱們使用vi 編輯configure文件。大概在29605行,源代碼以下:

只須要將RM='$RM' 改爲RM='$RM -f'便可。修改好之後,從新編譯便可經過。

4.make && make install  以下就已經安裝成功

5.安裝apr-util

tar xvf apr-util-1.5.4.tar.gz 

cd apr-util-1.5.4

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/

make && make install

出現如下提示則表示安裝成功。

5.由於如今web服務器支持ssl加密功能,所以咱們須要先安裝openssl包。安裝方法:

1)tar xvf openssl-1.0.2d.tar.gz 

2)cd openssl-1.0.2d

3)./config --prefix=/usr/local/openssl -fPIC no-gost

4)make depend

5)make

6)make install

7) /usr/local/openssl/bin/openssl version  (查看openssl版本信息,以下便是對的)
OpenSSL 1.0.2d 9 Jul 2015

6.如今終於開始安裝httpd了,咱們使用的安裝包爲:httpd-2.4.16.tar.bz2

1.)tar xvf httpd-2.4.16.tar.bz2

2.)cd httpd-2.4.16

3.)./configure --prefix=/usr/local/apache  --enable-so --enable-ssl --with-ssl=/usr/local/openssl --enable-cgi --enable-rewrite--with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mpms-shared=all

報錯:configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/,這是由於缺乏pcre-devel包,使用yum源安裝便可。

解決辦法:yum install pcre-devel -y

4.)繼續編譯安裝

./configure --prefix=/usr/local/apache  --enable-so --enable-ssl --with-ssl=/usr/local/openssl --enable-cgi --enable-rewrite--with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most

 --enable-mpms-shared=all

5.)make

6.)make install 出現以下畫面則證實安裝成功了。

7.)修改apache的配置文件(注意:修改任何配置文件以前都要先作好備份)

 cd /usr/local/apache/conf/

cp httpd.conf httpd.conf.bak

vi httpd.con 須要修改兩處

第一處:在ServerRoot "/usr/local/apache"下面添加一行代碼——PidFile "/var/run/httpd.pid"

第二處:將#ServerName www.example.com:80修改成ServerName localhost:80(注意:前面的#要去掉)

8.)添加httpd的bin文件到PATH路徑下,這樣咱們使用httpd的命令系統就能夠找到了。

第一步:vi /etc/profile.d/httpd.sh (添加以下內容)

export PATH=$PATH:/usr/local/apache/bin

第二步:source /etc/profile.d/httpd.sh

第三步:查看環境變量是否已經包含httpd的bin文件路徑。

echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/apache/bin

(已經添加成功了)

9.)添加httpd的頭文件(include)

ln -sv /usr/local/apache/include/ /usr/include/apache

10.)添加httpd的幫助文件路徑,這須要系統自身安裝了man命令,由於咱們是最小化安裝,全部須要手動安裝一下man,也很簡單,咱們使用域名安裝,即:

第一步:yum install man -y

第二步: vi /etc/man.config在最後添加一行:

MANPATH /usr/local/apache/man

到此爲止,apache就已經安裝、配置成功了。咱們能夠啓動httpd了,啓動命令:/usr/local/apache/bin/apachectl start,,由於咱們之間已經重寫了環境變量,將httpd的bin文件路徑告知系統,所以我們直接使用apachectl start 就能夠啓動,默認httpd監聽在80端口,咱們可使用netstat -nltp查看80端口是否已將開啓。以下:

那如今能不能訪問呢?咱們來試下,再試以前建議你們關閉防火牆和selinux,由於咱們如今只是測試你們LAMP架構,防火牆會在後面的文章專門講到。關閉方法:

防火牆關閉方法:

1.service iptables stop(關閉當前防火牆,可是重啓系統後默認依然會自動重啓)

2.chkconfig --level 2345 iptables off(關閉iptables,系統重啓後不會自動重啓)

3.chkconfig --list |grep iptables

(查看是否關閉成功,全是off表示關閉成功)

selinux關閉方法:

1.setenforce 0(關閉當前selinux)

2.getenforce (查看當前selinux狀態,如今爲Permissive,系統重啓後仍然會自動啓動)

3.vi /etc/sysconfig/selinux 將SELINUX=enforcing這行代碼改爲SELINUX=disabled,這樣系統重啓之後也不會重啓selinux。

整個過程以下圖:

11.)終於能夠檢測一下本身的安裝成果了,在本地瀏覽器上直接輸入你虛擬linux服務器ip地址(好比我如今的虛擬linuxIP地址爲192.168.1.214)便可訪問。

看到沒有,It works!爲了娛樂,咱們能夠直接修改顯示內容,沒事的時候能夠裝裝逼嘛!修改文件 vi /usr/local/apache/htdocs/index.html,把It works!改爲你想看到的任意內容便可,保存以後再刷新瀏覽器便可顯示。

OK,搞定了。下一節咱們來說mysql的安裝和配置。

4、MySQL的安裝

MySQL的安裝咱們採用通用二進制包,由於手動編譯安裝花費的時間太長太長~並且通用二進制包已經包含了企業所須要的基本功能。所以咱們使用這種方案,下載安裝包mysql-5.5.43-linux2.6-x86_64.tar.gz。

1.首先下載好安裝包,上傳到指定目錄下,我仍是使用上節的目錄即:/usr/local/lampsoft

2.解壓

tar xvf mysql-5.5.43-linux2.6-x86_64.tar.gz -C /usr/local/

使用-C參數,將壓縮包的解壓位置指定到/usr/local下。

如今/usr/local目錄下已經生成一個mysql-5.5.43-linux2.6-x86_64目錄,因爲這個目錄信息含有mysql的版本號,平臺架構,所以不想修改它的名字。可是mysql官方文檔又建議咱們安裝子啊/usr/local/mysql下,怎麼辦呢?作個軟鏈接好了。

3.軟鏈接

ln -sv /usr/local/mysql-5.5.43-linux2.6-x86_64/ /usr/local/mysql
成功後會這樣提示:`/usr/local/mysql' -> `/usr/local/mysql-5.5.43-linux2.6-x86_64/'    

4.建立mysql的用戶和組

groupadd -g 306 -r mysql 建立mysql組,-g指定組ID,此處爲306,-r表示建立系統用戶組,注意少於500的都是系統用戶組。

useradd -r -g 306 -u 306 mysql 建立mysql組,-g指定屬於哪一個用戶組,-r表示建立系統用戶,-u指定用戶ID。查看一下建立是否成功

id mysql   顯示以下:

uid=306(mysql) gid=306(mysql) groups=306(mysql)  表示用戶id爲306,組id爲306,用戶mysql屬於mysql組。有點拗口,習慣了就行了。

5.改變mysql目錄下的文件屬組和屬主

chown -R mysql:mysql /usr/local/mysql/*

使用ll命令查看一下屬組和屬主信息,以下:

[root@centos1 local]# ll /usr/local/mysql/
total 216
drwxr-xr-x  2 mysql mysql   4096 Jul 31 00:42 bin
-rw-r--r--  1 mysql mysql  17987 Feb 27 16:30 COPYING
drwxr-xr-x  3 mysql mysql   4096 Jul 31 00:42 data
drwxr-xr-x  2 mysql mysql   4096 Jul 31 00:42 docs
drwxr-xr-x  3 mysql mysql   4096 Jul 31 00:42 include
-rw-r--r--  1 mysql mysql 148414 Feb 27 16:30 INSTALL-BINARY
drwxr-xr-x  3 mysql mysql   4096 Jul 31 00:42 lib
drwxr-xr-x  4 mysql mysql   4096 Jul 31 00:42 man
drwxr-xr-x 10 mysql mysql   4096 Jul 31 00:42 mysql-test
-rw-r--r--  1 mysql mysql   2496 Feb 27 16:30 README
drwxr-xr-x  2 mysql mysql   4096 Jul 31 00:42 scripts
drwxr-xr-x 27 mysql mysql   4096 Jul 31 00:42 share
drwxr-xr-x  4 mysql mysql   4096 Jul 31 00:42 sql-bench
drwxr-xr-x  2 mysql mysql   4096 Jul 31 00:42 support-files

6.建立mysql數據文件路徑,默認是存儲在mysql安裝目錄下面的data下,可是這樣之後數據滿了的話很差擴展,企業級通常都會使用邏輯卷的方式,使用單獨的硬盤或者服務器進行數據的存儲,咱們暫時不講的那麼深刻,等LAMP教程完結以後,我會專門抽出一節將lvm技術。目前咱們暫時把數據存儲在/mydata/data下,這兩個目錄都是沒有的,須要咱們手動建立。

mkdir -pv /mydata/data 會看到如下提示:

mkdir: created directory `/mydata'
mkdir: created directory `/mydata/data' 表示建立成功了

7.mysql的初始化執行,咱們只須要執行如下安裝目錄下面的一個腳本文件便可。

/usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/mydata/data/ --basedir=/usr/local/mysql

注意:使用--user來指定mysql的用戶,datadir指定數據文件路徑,由於咱們不使用默認的數據存儲路徑,所以這裏是必定要指定的。另外--basedir指定mysql的安裝路徑,不然會提示找不到./bin/my_print_defaults。執行以後沒有報錯的話,咱們的mysql安裝就初步完成了,下面的步驟就是調整和規範化了。

8.修改MySQL的屬主爲root,這樣能夠在黑客在破解了mysql權限以後,仍然沒法修改mysql數據。修改好以後查看一下,整個過程以下:

[root@centos1 mysql]# chown -R root /usr/local/mysql/*
[root@centos1 mysql]# ll /usr/local/mysql/
total 216
drwxr-xr-x  2 root mysql   4096 Jul 31 00:42 bin
-rw-r--r--  1 root mysql  17987 Feb 27 16:30 COPYING
drwxr-xr-x  3 root mysql   4096 Jul 31 00:42 data
drwxr-xr-x  2 root mysql   4096 Jul 31 00:42 docs
drwxr-xr-x  3 root mysql   4096 Jul 31 00:42 include
-rw-r--r--  1 root mysql 148414 Feb 27 16:30 INSTALL-BINARY
drwxr-xr-x  3 root mysql   4096 Jul 31 00:42 lib
drwxr-xr-x  4 root mysql   4096 Jul 31 00:42 man
drwxr-xr-x 10 root mysql   4096 Jul 31 00:42 mysql-test
-rw-r--r--  1 root mysql   2496 Feb 27 16:30 README
drwxr-xr-x  2 root mysql   4096 Jul 31 00:42 scripts
drwxr-xr-x 27 root mysql   4096 Jul 31 00:42 share
drwxr-xr-x  4 root mysql   4096 Jul 31 00:42 sql-bench
drwxr-xr-x  2 root mysql   4096 Jul 31 00:42 support-files

看到全部文件和目錄的屬組爲mysql,屬主爲root,如今能夠執行下一步了——爲mysql提供配置文件。

9.其實mysql本身已經把配置文件寫好了,在安裝目錄下的support-files目錄下有不少以.cnf結尾的文件,這些就是不一樣硬件配置所須要的配置文件,通常內存在512M-1G之間使用my-large.cnf文件,2G以上使用my-huge.cnf,具體的你們能夠看一下,每一個文件裏面都有使用配置介紹。這裏咱們使用my-large.cnf文件。

cp /usr/local/mysql/support-files/my-large.cnf /etc/my.cnf

 

10.修改配置文件,最簡單的方式只須要修改兩處:

第一處:修改一行代碼

thread_concurrency = 8 (具體要等於幾,是根據你cpu的個數乘以2得出的,CPU的個數怎麼肯定呢?使用這條命令:cat /proc/cpuinfo |grep processor |wc -l,得出的數字就是CPU的個數),個人是2個,所以此處數值改成4.

即:thread_concurrency =4

第二處:直接在thread_concurrency = 4下面添加一行代碼,即:datadir = /mydata/data

11.爲mysql提供sysv服務腳本,順便提一下,httpd咱們也能夠寫sysv腳本,可是我認爲不使用依然可以解決基本問題,好比基本的啓動、中止等操做,以及開機自啓操做均可使用其餘命令簡單配置,可能比寫腳本更加簡單。由於mysql提供好了腳本,咱們只須要簡單的改個名字複製到/etc/init.d下面就能夠,仍是很是簡單的。

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

給mysqld執行權限,默認都是有的,不過最好檢查一下,否則後果很嚴重。命令:chmod +x /etc.init.d/mysqld,查看一下是否是每一個位都含有x項。

ll /etc/init.d/mysqld 
-rwxr-xr-x 1 root root 10880 Jul 31 01:33 /etc/init.d/mysqld

權限沒問題以後,我們就能夠作出自啓動了,兩條命令:

# chkconfig  --add mysqld

# chkconfig mysqld on如此便可。

 

12.下面是mysql的規範化使用了。

a.)修改幫助文件命令,添加mysql的man路徑

vi /etc/man.config 在最後一行添加以下代碼

MANPATH /usr/local/mysql/man

b.)添加mysql的頭文件位置

咱們一樣使用軟鏈接實現:

ln -sv /usr/local/mysql/include/ /usr/include/mysql

c.)添加mysql的執行文件

vi /etc/profile.d/mysql.sh
添加以下一行代碼

export PATH=$PATH:/usr/local/mysql/bin 添加完成後,執行一下如下命令便可

source /etc/profile.d/mysql.sh

d.)添加mysql的庫文件

vi /etc/ld.so.conf.d/mysql.conf 在該文件了添加mysql的lib路徑,個人是/usr/local/mysql/lib,直接將這行代碼寫進去就能夠了。

而後使用ldconfig -v讓系統從新讀取一下庫文件。若是配置正確的話,咱們能夠看到mysql的庫文件已將加載進來,以下圖所示:

 

13.到此爲止mysql就已經安裝配置成功了,咱們如今能夠鏈接一下試試了。固然鏈接以前咱們要先啓動mysql了,啓動命令:service mysqld start。啓動成功會有提示信息:

Starting MySQL... SUCCESS! 

mysql的端口號默認監聽在3306,這也是爲何以前那咱們把mysql的組和用戶ID都設置成306,好記,意義也比較明確。成功以後直接使用mysql就能夠鏈接到mysql服務器上。能夠查看版本信息,查看鏈接用戶等信息,以下圖:

5、PHP的安裝

1.php的安裝包使用5.6版本的最新穩定版php-5.6.11.tar.bz2,解壓縮

tar xvf php-5.6.11.tar.bz2

2.進入php目錄下,進行編譯安裝。此次咱們不提早安裝依賴包,而是在編譯過程當中,根據報錯信息,一邊修補一邊安裝,這樣也更能讓你們體會到真實生活中所面臨的問題。可是要相信,最終老是會解決的,可能過程比較複雜,可是你一樣要相信,你花十天學會同樣東西和花費半個時辰學會同樣東西的熟練度與認知度是不同的。咱們有生以來可能會遭受太多的欺騙,可是惟有本身的汗水是不會欺騙本身,相信本身,一塊兒加油吧!

cd php-5.6.11

./configure --prefix=/usr/local/php  --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml  --enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt --with-gd --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2  --enable-maintainer-zts 

報錯1:configure: error: xml2-config not found. Please check your libxml2 installation

解決辦法:yum install libxml2 libxml2-devel -y

如今從新編譯安裝,上面問題已解決,可是又報錯:

報錯2: checking for BZip2 in default path... not found
configure: error: Please reinstall the BZip2 distribution

解決辦法:yum install bzip2 bzip2-devel

從新編譯安裝,一樣又有新的報錯,此次是:

報錯3: checking for T1lib support... no
checking whether to enable truetype string function in GD... no
checking whether to enable JIS-mapped Japanese font support in GD... no
If configure fails try --with-vpx-dir=<DIR>
configure: error: jpeglib.h not found.

解決辦法:yum install gd.x86_64 gd-devel.x86_64 jpeg-turbo.x86_64 libjpeg-turbo-devel.x86_64 libpng.x86_64 libpng-devel.x86_64 freetype.x86_64 freetype-devel.x86_64 

繼續從新編譯,發現果真還有一個問題,

報錯4:configure: error: mcrypt.h not found. Please reinstall libmcrypt.

提示咱們加密文件的頭文件找不到,其實咱們根本沒有安裝。咱們來從新安裝一下,這個安裝要稍微複雜一點,須要下載四個安裝包,分別是:libmcrypt-2.5.8-alt1.x86_64.rpm        mhash-0.9.9.9-3.el6.x86_64.rpm

libmcrypt-devel-2.5.8-alt1.x86_64.rpm  mhash-devel-0.9.9.9-3.el6.x86_64.rpm

如今咱們就來安裝一下。

解決辦法:rpm -ivh libmcrypt-2.5.8-alt1.x86_64.rpm        mhash-0.9.9.9-3.el6.x86_64.rpm

libmcrypt-devel-2.5.8-alt1.x86_64.rpm  mhash-devel-0.9.9.9-3.el6.x86_64.rpm

出現以下提示即證實安裝成功

若是出現下面這樣的界面,則表示編譯經過了。

3.如今能夠make了,可能要等一會了,這個時間稍微會長一點。

make

在咱們make完成以後,通常會提示讓咱們測試一下,沒事的話你們能夠作一下,命令:make test,我就不測試了,直接進行安裝了。

4.安裝

make install

這步很是快,以下便可。

5.爲php提供配置文件,也是php本身已經寫好的,咱們直接複製更名,放到以前定義的php配置文件位置就好了。以下圖:

6.編譯apache的配置文件,整合apache和php。

vi /usr/local/apache/conf/httpd.conf 須要修改兩處

第一處:找到AddType 行,而後添加以下兩行。

 AddType application/x-httpd-php  .php
 

 AddType application/x-httpd-php-source  .phps

第二處:定位至DirectoryIndex index.html 

  修改成:
DirectoryIndex  index.php  index.html

保存好退出,重啓httpd,重啓命令還記得吧,apachectl restart。

7.在重啓以前咱們要寫個php的測試文件,否則你怎麼知道php有沒有被apache整合調用呢。在/usr/local/apache/htdocs/下編輯一個index.php文件。即

vi /usr/local/apache/htdocs/index.php 寫上以下代碼:

<?php

phpinfo();

?>

保存退出便可。

8.如今能夠去重啓Apache了,看一下有沒有把php的信息調用出來。重啓之後,咱們在瀏覽器訪問虛擬linux服務器地址。以下圖即證實咱們成功了

在這個界面裏,咱們能夠查看裝了那些插件,支持哪些功能等等。

6、使用XCache爲php加速

XCache官網以下介紹其產品:XCache 是一個開源的 opcode 緩存器/優化器, 這意味着他可以提升您服務器上的 PHP 性能. 他經過把編譯 PHP 後的數據緩衝到共享內存從而避免重複的編譯過程, 可以直接使用緩衝區已編譯的代碼從而提升速度. 一般可以提升您的頁面生成速率 2 到5 倍, 下降服務器負載.

另外須要注意的是,XCache只有3.2.0之後的版本纔對php5.6支持,所以各位朋友若是想使用XCache爲php加速的話,記得去官網下載最新版本,目前最新版是2014年09月18日發佈的3.2.0.官網:http://xcache.lighttpd.net

如今開始安裝XCache

1.解壓

# tar xvf xcache-3.2.0.tar.gz

2.使用phpize擴展php的模塊,能夠創建php的外掛模塊,如今咱們使用的是xcache。

# cd xcache-3.2.0

# /usr/local/php/bin/phpize 

出現以下提示即爲正確

Configuring for:
PHP Api Version:         20131106
Zend Module Api No:      20131226
Zend Extension Api No:   220131226

注意!!!執行/usr/local/php/bin/phpize這條命令,必定要進入到xcache的解壓目錄下執行,不然會報錯:

Cannot find config.m4. 
Make sure that you run '/usr/local/php/bin/phpize' in the top level source directory of the module

3.配置編譯xcache了

# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config 

出現以下提示便可

creating libtool
appending configuration tag "CXX" to libtool
configure: creating ./config.status
config.status: creating config.h

4.編譯安裝

# make && make install

5.安裝結束後會出現以下一行:

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-zts-20131226/

把後面這段複製下來,後面要用到。

6.編輯php.ini配置文件,整合php和xcache。

# mkdir /etc/php.d

# cp xcache.ini /etc/php.d

# vi /etc/php.d/xcache.ini  在[xcache-common]下面修改一行,將extension = xcache.so改爲以下:

extension = /usr/local/php/lib/php/extensions/no-debug-zts-20131226/xcache.so

注意:

1.xcache.size默認等於60M,若是等於0表示禁用 

2.; extension = php_xcache.dll這個.dll文件是給Windows用的,註釋掉便可。默認也是註釋掉的

 

好了,到底爲止已經算是完成了LAMP架構。

相關文章
相關標籤/搜索