源代碼實現LAMP的平臺搭建

一、LAMP簡介php

        Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一組經常使用來搭建動態網站或者服務器的開源軟件,自己都是各自獨立的程序,可是由於常被放在一塊兒使用,擁有了愈來愈高的兼容度,共同組成了一個強大的Web應用程序平臺。隨着開源潮流的蓬勃發展,開放源代碼的LAMP已經與J2EE.Net商業軟件造成三足鼎立之勢,而且該軟件開發的項目在軟件方面的投資成本較低,所以受到整個IT界的關注。從網站的流量上來講,70%以上的訪問流量是LAMP來提供的,LAMP是最強大的網站解決方案。mysql


二、LAMP平臺搭建所需源代碼:linux

            apr-1.4.6.tar.gzsql

            apr-util-1.5.1.tar.gz數據庫

            httpd-2.4.9.tar.bz2apache

     mysql-5.6.15.tar.gzvim

     php-5.4.13.tar.bz2bash


源代碼能夠去官方網站下載,根據本身系統的版原本選擇合適的源代碼服務器


三、linux源代碼的編譯環境:編輯器

    Dovelopment tools

    Server Platform Development

    Additional Development


四、源碼安裝mysql:

    1)、拆解mysql源代碼包:

[root@fcy ~]# tar -zxvf mysql-5.6.15.tar.gz -C /usr/local/src/

        進入拆解好的mysql源碼包,能夠看到有一個名稱爲INSTALL-SOURCE的文件,使用vim編輯器打開,從4702行開始,有該版本mysql源碼安裝的步驟,照作便可:

wKioL1Xav7jj_3xdAAPlgWte4Dk627.jpg


    建立mysql運行的帳號和組:

[root@fcy mysql-5.6.15]# groupadd mysql
[root@fcy mysql-5.6.15]# useradd -r -g mysql mysql

    使用cmake工具編譯mysql源代碼(cmake能夠從光盤上找到):

wKiom1XawN7g5DgTAALD9g51t4g878.jpg

    編譯完成後執行安裝:

wKioL1Xaw0OjTYZdAANIncLNZGA294.jpg

    進入/usr/local/mysql目錄,修改相關目錄的權限:

wKioL1Xayu-BC293AARSqx5VYAc094.jpg

    安裝mysql默認數據庫,並指定運行用戶爲mysql:

[root@fcy mysql]# scripts/mysql_install_db --user=mysql

    查看生成在/usr/local/mysql/data目錄下的默認數據庫:

wKiom1XayaCAf84uAAIouh6ifFY561.jpg    因爲mysql在運行時是以mysql用戶和組的身份,因此須要對數據庫操做具備相應的權限,修改/usr/local/mysql/下的全部者爲root,可是對於data目錄則繼續保持全部者爲mysql,組爲mysql

wKiom1XaypzQfCF1AASL9zSlh0U057.jpg

     將mysql的路徑添加到系統變量並刷新:

wKiom1XazV3QwoP4AAChgaUAZog219.jpg

wKiom1XazeKRvST9AADn_EgG0-4530.jpg

    拷貝啓動控制腳本到/etc/init.d/ 並重命名爲mysqld

wKiom1XazoDT_EogAAD0G-B3l7s718.jpg

    添加mysql爲開機自啓動

[root@fcy mysql]# chkconfig --add mysqld
[root@fcy mysql]# chkconfig --list |grepmysqld
mysqld            0:off 1:off 2:on 3:on 4:on 5:on 6:off

    將mysql的lib庫動態連接到系統lib庫

[root@fcy mysql]# touch/etc/ld.so.conf.d/mysql.conf
[root@fcy mysql]# echo"/usr/local/mysql/lib">>/etc/ld.so.conf.d/mysql

    刷新並查看

[root@fcy mysql]# ldconfig
[root@fcy mysql]# ldconfig -pv |grep mysql
         libmysqlclient_r.so.16(libc6) => /usr/lib/mysql/libmysqlclient_r.so.16
         libmysqlclient.so.16(libc6) => /usr/lib/mysql/libmysqlclient.so.16

    將man手冊的路徑告訴系統,方便查找man的相關幫助信息

[root@fcy mysql]# echo "MANPATH/usr/local/mysql/man" >>/etc/man.config

    mysql的頭文件庫建立連接

[root@fcy include]# pwd
/usr/include
[root@fcy include]# ln -s/usr/local/mysql/include/ mysql
[root@fcy include]# ll |grep mysql
lrwxrwxrwx. 1 root root     25 Jul 20 22:51mysql -> /usr/local/mysql/include/

    啓動mysql並檢查端口3306是否啓動

wKioL1Xa2Fehr4hXAADrg9oLEQw666.jpg

    爲mysql數據庫設置登陸密碼(初始密碼爲空)

[root@fcy include]# mysqladmin -u root -ppassword '123456'
Enter password:


五、源碼安裝apache:

    將源碼包http和http的依賴包apr,apr-util拆解到/usr/local/src/目錄下:

[root@fcy ~]# tar -zxvf apr-1.4.6.tar.gz -C /usr/local/src/
[root@fcy ~]# tar -zxvf apr-util-1.5.1.tar.gz -C /usr/local/src/
[root@fcy ~]# tar -jxvf httpd-2.4.9.tar.bz2 -C /usr/local/src/

    進入/usr/local/src/apr-1.4.6/,執行編譯安裝

[root@fcy apr-1.4.6]# ./configure --prefix=/usr/local/apr   #編譯並指定安裝目錄

    安裝:

[root@fcy apr-1.4.6]# make && make install

    進入/usr/local/src/apr-util-1.5.1,執行編譯安裝

[root@fcy apr-1.4.6]#./configure --prefix=/usr/local/apr-utils --with-apr=/usr/local/apr/bin/apr-1-config

    安裝:

[root@fcy apr-util-1.5.1]# make &make install

    進入/usr/local/src/httpd-2.4.9(提示缺乏pcre,從光盤安裝pcre和pcre-devel便可),編譯:

[root@fcy httpd-2.4.9]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-rewrite --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-utils/bin/apu-1-config --with-pcre -with-z --enable-mpms-shared=all

    安裝:

[root@fcy httpd-2.4.9]# make &&make install

    添加搜索路徑:

wKioL1Xa5xTQIPeqAACxCPmYDCE727.jpg

    wKioL1Xa50jRI3KtAAFKoHX2yQM435.jpg

    添加控制腳本到/etc/init.d/httpd,並賦予執行權限:

[root@fcy httpd-2.4.9]# ll /etc/init.d/httpd 
-rwxr-xr-x. 1 root root 852 Aug 25 01:37 /etc/init.d/httpd

    添加開機自啓動並檢查啓動級別:

wKiom1Xa5mbBuhNkAADfGAtb_XA329.jpg    拷貝配置文件/etc/httpd/httpd.conf到/usr/local/apache/conf/httpd.conf

[root@fcy httpd-2.4.9]# cp -p /etc/httpd/httpd.conf /usr/local/apache/conf/httpd.conf

    啓動apache並檢查80端口:

wKioL1Xa6bvwo29rAAIpEQZtLUw121.jpg


六、源代碼安裝php

    拆解源碼包:

[root@fcy ~]# tar -jxvf php-5.4.13.tar.bz2 -C /usr/local/src/

    進入/usr/local/src/php-5.4.13,編譯源碼:


    建立安裝指定目錄:

[root@fcy ~]# mkdir /usr/local/apache/conf
[root@fcy ~]# mkdir -pv /etc/php /etc/php5.d
mkdir: created directory `/etc/php'
mkdir: created directory `/etc/php5.d'

    安裝php:

[root@fcy php-5.4.13]# make &&make install

    拷貝動態庫文件到apache的庫目錄:

[root@fcy libs]# cp /usr/local/src/php-5.4.13/libs/libphp5.so /usr/local/apache/modules/libphp5.so
[root@fcy libs]# cp /usr/local/src/php-5.4.13/libs/libphp5.la /usr/local/apache/modules/libphp5.la

    在httpd.conf中加入php支持模塊和識別.php後綴的文件:

wKioL1XbHUvje8MfAAD-Hw8gNqI064.jpg

wKioL1XbRt6wIHg_AABxejILLvk296.jpg

    重啓apachewKioL1XbHZ2Q8WygAAIox0z-p4g947.jpg

    訪問測試(服務器地址192.168.47.100):

wKiom1XbG_bjGnTtAAEGX10DrpA552.jpg

相關文章
相關標籤/搜索