Web應用之LAMP源碼環境部署

来源:http://www.cnblogs.com/endmoon/archive/2016/12/15/6182885.html
-Advertisement-
Play Games

一、LAMP環境的介紹 1.LAMP環境的重要性 思索許久,最終還是決定寫一篇詳細的LAMP的源碼編譯安裝的實驗文檔,一來是為了給自己一個交代,把技術進行系統的歸納,將技術以極致的形式呈現出來,做為一個做技術的應該有的態度要通過這篇文檔展現,做為以後二來也是為了給那些一直在尋找詳細文檔來細緻學習的人 ...


一、LAMP環境的介紹

1.LAMP環境的重要性

思索許久,最終還是決定寫一篇詳細的LAMP的源碼編譯安裝的實驗文檔,一來是為了給自己一個交代,把技術進行系統的歸納,將技術以極致的形式呈現出來,做為一個做技術的應該有的態度要通過這篇文檔展現,做為以後二來也是為了給那些一直在尋找詳細文檔來細緻學習的人多一些思路,於是結合自己所學將零零散散知識進行了整合,儘量將最好的東西展現出來。安裝過程中遇到的問題及解決方法我也會一一解答(專門用一篇博客來列出LAMP的問題和解決方法),三來後面都很多實驗都需要用到LAMP的環境,比如搭建論壇,tomcat環境部署,搭建zabbix監控等等,所以LAMP環境絕不能草草搭建完事,如果LAMP出問題了,後面LAMP上部署的應用和各種服務可就遭殃了,所以認認真真,一絲不苟地把LAMP環境搭建好是非常有必要的.

那麼接下來就開始整個LAMP環境的搭建吧,這裡我採用的是源碼編譯安裝,雖然用yum安裝會非常省事,但是由於yum安裝的各種包版本可能比較老,在不同的系統上yum可能支持性不好,對後續的維護可能會有影響,所以綜合考慮後,還是決定用源碼編譯來部署LAMP環境,如果為了圖省事,以後就會有源源不斷的麻煩事涌來,這樣做得不償失,做運維,在起初環境的設計和部署上一定要謹慎周全的考慮,把各方各面都要考慮周全,謹小慎微,容不得一點的紕漏,不然後期維護會非常的頭疼,這一點是通用的,切記!!!這裡我就用LAMP的環境搭建來做個事例吧,搭建過程中必須要做到條理清晰,思路嚴謹,任何的馬虎都有可能為後期的維護帶來巨大的隱患。

那麼在搭建LAMP之前,首先簡單地介紹一下LAMP的相關概念,以及整個LAMP源碼編譯的實驗環境(由於條件限制,這裡我用的是虛擬機來進行的實驗,不過真實的生產環境操作一樣),大體步驟(這個是整個實驗的指導思路,脈絡,後面的整個實驗都是按照這個步驟有條不紊的進行,確保實驗高質量的完成)

2.LAMP組件介紹

在安裝LAMP之前,對LAMP進行瞭解是肯定的了, 首先就說說其含義

  • LAMP指的是linux,Apache,Mysql以及Php的簡稱,通過大量的生產環境的實踐證明,在網路應用和開發環境方面,LAMP組合是非常棒的黃金搭檔,它們的結合提供了非常強大功能

  • linux作為底層的操作系統,提供靈活且可定製性的應用平臺,為其他組件穩定高效的運行在其之上提供了保障

  • Apache作為Web伺服器,提供了功能強大,穩定且支撐能力突出的web平臺,為網站提供了強力支柱

  • Mysql也是一款非常優秀的資料庫,從其產生的從多衍生資料庫就可見證明其強大

  • Php是一種開發源代碼的多用途腳本語言,可嵌入html中,適用於web開發,且其編寫的數據可訪問mysql資料庫及linux提供的動態內容

二、Apache源碼安裝

1.下載Apache及相關依賴包

Apache2.4版本開始不自帶apr庫,所以需要下載相應的庫文件(百度雲盤:http::/pan.baidu.com/s/1bnL31c7)
1.apr(Apache依賴包) http://irrors.hust.edu.cn/apache/apr
2.apr-util (Apache依賴包) http://irrors.hust.edu.cn/apache/apr
3.pcre (Apache依賴包) http://sourceforge.net/projects/pcre/files/pcre/
4.Apache http://archive.apache.org/dist/httpd/

2.安裝Apache及其相關依賴包

  • 解壓Apache及相關依賴包(開始安裝依賴包,註意,需要將解壓包放到apache軟體解壓後的srclib目錄下麵也就是這裡的/soft/httpd-2.4.16/srclib/)
[root@localhost soft]#tar -zxvf
[root@localhost soft]#tar -zxvf apr-1.5.2.tar.gz
[root@localhost soft]#tar -zxvf apr-util-1.5.4.tar.g
[root@localhost soft]#tar -zxvf pcre-8.37.tar.g
-將相關依賴包放入/soft/httpd-2.4.16/srclib/中
[root@localhost soft]#mv apr-1.5.2 /httpd-2.4.16/srclib/apr
[root@localhost soft]#mv apr-util /httpd-2.4.16/srclib/apr-util
  • 安裝apr

    [root@localhost soft]# cd /soft/httpd-2.4.16/srclib/
    [root@localhost srclib]# cd apr     在目錄apr下進入configure配置文件將$RM "cfgfile"這一行用#註銷
    [root@localhost apr]# ./configure --prefix=/usr/local/apr     
    [root@localhost apr]# make && make install
  • 安裝apr-util

    [root@localhost srclib]# cd apr-util
    [root@localhost apr-util]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
    [root@localhost apr-util]# make && make install
  • 安裝pcre

    [root@localhost srclib]# tar -zxvf pcre-8.37.tar.gz
    [root@localhost srclib]# mv pcre-8.37 pcre
    [root@localhost pcre-8.37]# ./configure --prefix=/usr/local/pcre
    [root@localhost pcre-8.37]# make && make install
    安裝Apache
    [root@localhost soft]# cd httpd-2.4.16 
    [root@localhost soft]# ./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd --with-z=/usr/local/zlib/  --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre 
    [root@localhost soft]# make && make install
    #./configure                              \   #執行當前目錄下軟體自帶的配置命令
    #--prefix=/usr/local/apache2              \   #指定Apache軟體安裝的位置
    #--sysconfdir=/etc/httpd                  \   #指定Apache伺服器配置文件存放位置
    # --with-z=/usr/local/zlib/               \   #指定zlib庫文件的位置
    # --enable-so                             \   #以動態共用對象(DSO)編譯
    # --enable-deflate=shared                 \   #縮小傳輸編碼的支持
    # --enable-expires=shared                 \   #期滿頭控制
    # --enable-rewrite=shared                 \   #基於規則的URL操控
    # --enable-static-support                 \   #建立一個靜態鏈接版本的支持
    #--with-apr=/usr/local/apr                \   #加入apr依賴包安裝路徑
    #--with-apr-util=/usr/local/apr-util      \   #加入apr-util依賴包安裝路徑
    #--with-pcre=/usr/local/pcre              \   #加入pcre依賴包安裝路徑

3.配置Apache服務

  • 啟動apache服務

    進入/etc/httpd/httpd.conf配置文件,任意位置插入一行ServerName localhost:80
    [root@localhost httpd]# /usr/local/apache2/bin/apachectl start  
    httpd (pid 55493) already running
  • 註冊為服務

    [root@end ~]# cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
    [root@end ~]# service httpd start
    httpd (pid 45005) already running 
  • 查看Apache服務埠情況

    [root@localhost httpd]# netstat -na |grep 80
    tcp        0      0 :::80                       :::*                        LISTEN        24534/httpd   
  • 加入到chkconfig

    進入/etc/init.d/httpd,加入
    # chkconfig: 345 61 61
    # description:Apache httpd
     [root@end ~]# chkconfig --add httpd 
    [root@end ~]# chkconfig httpd on
  • 關閉防火牆
    關閉iptables

    [root@localhost httpd]# iptables -F      清空iptables防火牆策略
    [root@localhost httpd]# service iptables stop    關閉防火牆
    iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
    iptables: Flushing firewall rules:                         [  OK  ]
    iptables: Unloading modules:                               [  OK  ]
    [root@localhost httpd]# chkconfig iptables off       重啟後防火牆依舊處於關閉狀態
  • 關閉selinux

    兩種方法
    1.使用命令setenforce 0 系統重啟即失效(不需要重啟)
    2.編輯配置文件/etc/sysconfig/selinux 將SELINUX=enforcing改為disabled狀態( 須重啟生效)
    [root@localhost httpd]# setenforce 0   臨時將selinux改為Permission狀態,重啟系統後失效
     [root@localhost httpd]# cat /etc/sysconfig/selinux 
     # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #     enforcing - SELinux security policy is enforced.
    #     permissive - SELinux prints warnings instead of enforcing.
    #     disabled - No SELinux policy is loaded.
    SELINUX=disabled   將selinux改為disabled狀態,需要重啟系統才能生效
    # SELINUXTYPE= can take one of these two values:
    #     targeted - Targeted processes are protected,
    #     mls - Multi Level Security protection.
    SELINUXTYPE=targeted 

    4.網頁測試

    最後打開網頁,輸入網址http://ip即可查看網頁內容
    網頁顯示It works!就說明apache安裝成功了
    Paste_Image.png

三、源碼安裝Mysql

1.下載mysql及相關軟體包

從mysql 5.5版本開始,mysql源碼安裝開始使用cmake了
下載cmake http://cmake.org/files/
下載ncurses http://ftp.gnu.org/gnu/ncurses/
下載bison http://ftp.gnu.org/gnu/bison

2.安裝mysql及其依賴包

  • 安裝cmake

    [root@localhost mysql]# tar -zxvf cmake-3.4.1.tar.gz
    [root@localhost cmake-3.4.1]# ./configure 
    [root@localhost cmake-3.4.1]# make ; make install  
  • 安裝bison

    [root@localhost mysql]# tar -zxvf bison-3.0.tar.gz 
    [root@localhost bison-3.0]# ./configure 
    [root@localhost bison-3.0]# make ; make install
  • 安裝ncurses

    [root@localhost mysql]# tar -zxvf ncurses-6.0.tar.gz
    [root@localhost ncurses-6.0]# ./configure
    [root@localhost ncurses-6.0]# make ; make install
  • 安裝mysql

    解壓mysql
    [root@localhost soft]# tar -zxvf mysql-5.5.45.tar.gz   
    安裝mysql
    [root@localhost mysql-5.5.46]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
    編譯mysql
    [root@localhost mysql-5.5.46]#make ; make install   
    安裝詳解
    # -DCMAKE_INSTALL_PREFIX=/usr/local/mysql          \    #安裝路徑
    # -DMYSQL_DATADIR=/usr/local/mysql/data            \    #數據文件存放位置
    # -DSYSCONFDIR=/etc                                \    #my.cnf路徑
    # -DWITH_MYISAM_STORAGE_ENGINE=1                   \    #支持MyIASM引擎
    # -DWITH_INNOBASE_STORAGE_ENGINE=1                 \    #支持InnoDB引擎
    # -DWITH_MEMORY_STORAGE_ENGINE=1                   \    #支持Memory引擎
    # -DWITH_READLINE=1                                \    #快捷鍵功能(我沒用過)
    # -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock               \    #連接資料庫socket路徑
    # -DMYSQL_TCP_PORT=3306                            \    #埠
    # -DENABLED_LOCAL_INFILE=1                         \    #允許從本地導入數據
    # -DWITH_PARTITION_STORAGE_ENGINE=1                \    #安裝支持資料庫分區
    # -DEXTRA_CHARSETS=all                             \    #安裝所有的字元集
    # -DDEFAULT_CHARSET=utf8                           \    #預設字元
    # -DDEFAULT_COLLATION=utf8_general_ci              \    #校驗字元

3.配置Mysql服務

  • 創建用戶及用戶組

    [root@end mysql]# groupadd mysql                  創建mysql組
    [root@end mysql]# useradd -r -g mysql mysql       創建mysql用戶並添加到mysql組
  • 修改目錄所有者和所有組

    [root@end mysql]#chown -R mysql:mysql /usr/local/mysql          將mysql目錄下的所有文件的所有者和所有組改為msyql
  • 初始化資料庫

    [root@end mysql]#  chmod 777 scripts/mysql_install_db
    [root@end mysql]# scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
  • 複製mysql服務啟動配置文件(註意:在CentOS 6.4版操作系統的最小安裝完成後,在/etc目錄下會存在一個my.cnf,需要將此文件更名為其他的名字,如:/etc/my.cnf.bak,否則,該文件會幹擾源碼安裝的MySQL的正確配置,造成無法啟動)

    [root@end mysql]# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf 
  • 修改配置文件信息

    [mysqld]
    datadir=/usr/local/mysql/data
    socket=/var/lib/mysql/mysql.sock
    user=mysql
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid
  • 註冊為服務

    /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld      將mysqld添加為服務
  • 讓chkconfig管理mysql服務

    [root@end mysql]# chkconfig --add mysqld         將mysqld服務添加到chkconfig中
    [root@end mysql]# chkconfig mysqld on            重啟系統後服務自動運行
  • 設置環境變數

    在文件/etc/profile末尾添加
    PATH=/usr/local/mysql/bin:$PATH
    [root@end mysql]# source /etc/profile            使修改的環境變數立即生效
  • 啟動mysql服務

    [root@end mysql]# service mysqld start
    Starting MySQL...                                          [確定]
  • 檢查mysql服務是否啟動

    [root@end mysql]# netstat -tulnp |grep 3306
    tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      24351/mysqld 
  • 查看mysql進程

    [root@localhost ncurses-6.0]# ps aux |grep mysql
    root     48813  0.0  0.3  11304  1492 pts/2    S    16:47   0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/localhost.localdomain.pid
    mysql    48979  0.0  9.8 413156 37360 pts/2    Sl   16:47   0:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --socket=/var/lib/mysql/mysql.sock
    root     49018  0.0  0.2 103304   892 pts/2    S+   16:53   0:00 grep mysql
  • 修改mysql用戶root密碼

    [root@end mysql]# mysql -uroot  登錄到mysql,首次登陸無密碼
     mysql> SET PASSWORD = PASSWORD('endmoon');   設置mysql密碼
    Query OK, 0 rows affected (0.00 sec)
  • 用設置的密碼登錄到mysql資料庫

    [root@end mysql]# mysql -u root -p
    Enter password: endmoon
  • 設置root用戶遠程訪問

    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.20' IDENTIFIED BY 'password' WITH GRANT OPTION;
    Query OK, 0 rows affected (0.00 sec)
  • 配置防火牆
    防火牆的3306埠預設沒有開啟,若要遠程訪問,需要開啟這個埠

    打開/etc/sysconfig/iptables,在-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT後面添加
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
    [root@end mysql]# service iptables restart    使更改的防火牆配置生效
    iptables:將鏈設置為政策 ACCEPT:filter                    [確定]
    iptables:清除防火牆規則:                                 [確定]
    iptables:正在卸載模塊:                                   [確定]
    iptables:應用防火牆規則:                                 [確定]

    那麼mysql資料庫的源碼安裝到這裡就結束了

四、源碼安裝PHP

1.下載PHP以及相關庫軟體

從php5.4開始,需要自己下載安裝libXpm-dev了,但是由於包的依賴性原因,我就選擇了yum方式來進行安裝,通過網路yum源直接下載併進行安裝了
下載php以及相關的庫文件(百度網盤:http::/pan.baidu.com/s/1bnL31c7
gd庫以及php功能特性擴展庫文件
libgd-2.1.1.tar.gz gd庫文件(使php支持以下功能)
jpegsrc.v7.tar.gz jpeg庫文件(使php支持jpeg格式圖片)
zlib-1.2.7.tar.gz 數據壓縮函數庫(使php支持數據壓縮功能)
freetype-2.6.tar.gz freetype庫文件(使php支持多種字體格式文件)
libpng-1.2.56.tar.gz libpng庫文件(使php支持png格式圖片)

2.安裝PHP庫環境

  • 安裝libXpm

    yum -y install libXpm
    yum -y install libXpm-devel
    安裝完後libXpm配置文件預設在這個目錄/usr/lib64/下
  • 安裝autoconf-2.69.tar.gz

    [root@end LAMP-php]# tar -zxvf autoconf-2.69.tar.gz 
    [root@end LAMP-php]# cd autoconf-2.69
    [root@end autoconf-2.69]# ./configure 
    [root@end autoconf-2.69]# make ; make install
  • 安裝 libxml2-2.7.8.tar.gz

    [root@end LAMP-php]# tar -zxvf libxml2-2.7.8.tar.gz 
    [root@end LAMP-php]# cd libxml2-2.7.8     將$RM "cfgfile"這行用#註釋
    [root@end libxml2-2.7.8]# ./configure --prefix=/usr/local/libxml2
    [root@end libxml2-2.7.8]# make ; make install 
  • 安裝libmcrypt-2.5.8.tar.gz

    [root@end LAMP-php]# tar -zxvf libmcrypt-2.5.8.tar.gz 
    [root@end LAMP-php]# cd libmcrypt-2.5.8
    [root@end libmcrypt-2.5.8]# ./configure --prefix=/usr/local/libmcrypt
    [root@end libmcrypt-2.5.8]# make ; make install
  • 安裝zlib-1.2.7.tar.gz

    [root@end LAMP-php]# tar -zxvf zlib-1.2.7.tar.gz 
    [root@end LAMP-php]# cd zlib-1.2.7
    [root@end zlib-1.2.7]# ./configure --prefix=/usr/local/zlib
    [root@end zlib-1.2.7]# make ; make install
  • 安裝 libpng-1.2.56.tar.gz

    [root@end LAMP-php]# tar -zxvf libpng-1.2.56.tar.gz 
    [root@end LAMP-php]# cd libpng-1.2.56
    [root@end libpng-1.2.56]# ./configure --prefix=/usr/local/libpng
    [root@end libpng-1.2.56]# make ; make install
  • 安裝jpegsrc.v7.tar.gz

    [root@end LAMP-php]# tar -zxvf jpegsrc.v7.tar.gz   
    [root@end LAMP-php]# cd jpeg-7/
    [root@end jpeg-7]# mkdir /usr/local/jpeg6                    建立jpeg6軟體安裝目錄
    [root@end jpeg-7]# mkdir /usr/local/jpeg6/bin                建立存放命令的目錄
    [root@end jpeg-7]# mkdir /usr/local/jpeg6/lib                創建jpeg6庫文件所在目錄
    [root@end jpeg-7]# mkdir /usr/local/jpeg6/include            建立存放頭文件目錄
    [root@end jpeg-7]# mkdir -p /usr/local/jpeg6/man/man1        建立存放手冊目錄
    [root@end jpeg-7]# ./configure \
    > --prefix=/usr/local/jpeg6/ \   
    > --enable-shared \    建立共用庫使用的GNUd libtool
    > --enable-static      建立靜態庫使用的GNUlibtool
    ./configure --prefix=/usr/local/jpeg6/ --enable-shared  --enable-static
    [root@end jpeg-7]# make ; make install
  • 安裝freetype-2.6.tar.gz

    [root@end LAMP-php]# tar -zxvf freetype-2.6.tar.gz 
    [root@end LAMP-php]# cd freetype-2.6
    [root@end freetype-2.6]# ./configure --prefix=/usr/local/freetype
    [root@end freetype-2.6]# make ; make install
  • 安裝gd-2.0.32.tar.gz

    [root@end LAMP-php]# tar -zxvf gd-2.0.32.tar.gz 
    [root@end LAMP-php]# cd gd-2.0.32
    [root@end gd-2.0.32]# ./configure \  進入vim gd_png.c 將16行改為#include "/usr/local/libpng/include/png.h"
    > --prefix=/usr/local/gd2/ \                       gd庫文件安裝目錄
    > --with-zlib=/usr/local/zlib/ \                   指定zlib安裝路徑
    > --with-jpeg=/usr/local/jpeg6/ \                  指定jpeg6安裝路徑
    > --with-png=/usr/local/libpng/ \                  指定libpng安裝路徑
    > --with-freetype=/usr/local/freetype/             指定freetype安裝路徑
    ./configure --prefix=/usr/local/gd2/ --with-zlib=/usr/local/zlib/ --with-jpeg=/usr/local/jpeg6/ --with-png=/usr/local/libpng/ --with-freetype=/usr/local/freetype
    [root@end gd-2.0.32]# make ; make install 
  • 安裝PHP

    [root@end AMP]# tar -zxvf php-5.6.9.tar.gz 
    [root@end AMP]# cd php-5.6.9
    [root@end php-5.6.9]# ./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-libxml-dir=/usr/local/libxml2 --with-png-dir=/usr/local/libpng --with-jpeg-dir=/usr/local/jpeg6 --with-freetype-dir=/usr/local/freetype --with-gd=/usr/local/gd2 --with-zlib-dir=/usr/local/zlib --with-mcrypt=/usr/local/libmcrypt  --with-xpm-dir=/usr/lib64/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets 
    [root@end php-5.6.9]# make ; make install
    安裝詳解
    #./configure                                        \    #執行當前目錄下軟體自帶的配置命令
    #--prefix=/usr/local/php/                           \    #設置PHP5的安裝路徑
    #--with-config-file-path=/usr/local/php/etc/        \    #指定PHP5配置文件存入的路徑
    #--with-apxs2=/usr/local/apache2/bin/apxs/          \    #指定PHP查找Apache2的位置
    #--with-mysql=/usr/local/mysql/                     \    #指定mysql的安裝目錄
    #--with-libxml-dir=/usr/local/libxml2/              \    #指定php放置libxml2庫的位置
    #--with-png-dir=/usr/local/libpng/                  \    #指定php放置libpng庫的位置
    #--with-jpeg-dir=/usr/local/jpeg6/                  \    #指定php放置jpeg庫的位置
    #--with-freetype-dir=/usr/local/freetype/           \    #指定php放置freetype庫的位置
    #--with-gd=/usr/local/gd2/                          \    #指定php放置gd庫的位置
    #--with-zlib-dir=/usr/local/zlib/                   \    #指定php放置zlib庫的位置
    #--with-mcrypt=/usr/local/libmcrypt/                \    #指定php放置libcrypt庫的位置
    #--with-mysql=/usr/local/mysql/bin/mysql_config     \    #變數激活新增加mysqli功能
    #--enable-soap                                      \    #變數激活soap和web services支持
    #--enable-mbstring=all                              \    #使多位元組字元串支持
    #--enable-sockets                                   \    #變數激活socket通信特性

3.配置PHP

  • 創建php配置文件

    cp php.ini-development /usr/local/php/etc/php.ini  
  • 在Apache主配置文件中添加php支持

    進入Apache主配置文件/etc/httpd/http.conf中加入
    AddType application/x-httpd-php .php .phtml
    AddType application/x-httpd-php .php .php4 .php5
  • 創建php測試文件

    創建mkdir /usr/local/apache2/htdocs/test.php
     進入test.php編輯
    <?php
        phpinfo();
    ?>
  • 重啟Apache,使設置生效

    [root@localhost php-5.6.9]# service httpd restart
  • 測試網頁
    輸入網址http://ip/test.php
    看到php的版本信息網頁,表示測試成功!!!
    Paste_Image.png
    


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本教程講述在單機環境下搭建Hadoop偽分散式集群環境,幫助初學者方便學習Hadoop相關知識。 首先安裝Hadoop之前需要準備安裝環境。 安裝Centos6.5(64位)。(操作系統再次不做過多描述,自行百度) 安裝JDK1.7(64位)。 安裝Hadoop2.2(穩定版本64位) 註意:以上三 ...
  • 當我們需要修改數據表名或者修改數據表欄位時,就需要使用到MySQL ALTER命令。 開始本文教程前讓我們先創建一張表,表名為:testalter_tbl... ...
  • 打開資料庫的SQL Server Managerment Studio >資料庫 >打開資料庫會看見"可編程行" >打開有存儲過程 >新建存儲過程 實例: a.(資料庫端) CREATE PROCEDURE [dbo].[get] @hyzk varchar(255), @feibie varcha ...
  • 'hello world' > 'Hello world' update tableName set columnName=CHAR(ASCII(SUBSTRING(columnName, 1, 1))-32)+SUBSTRING(columnName, 2, len(columnName)) WH ...
  • T-sql是對SQL(structure query language )的升級。可以加函數。 系統資料庫:master管理資料庫。model模版資料庫,msdb備份等操作需要用到的資料庫,tempdb臨時資料庫。 用戶資料庫:用戶自己創建。實際上用戶創建資料庫就是想master這個資料庫下麵去註冊... ...
  • 問題描述:不知道誤操作了什麼,導致cmd視窗的滑鼠顯示位置出現錯位,如下: 現在要將滑鼠位置調整回來。 使用工具:cmd。 操作步驟: 1、查看cmd屬性可以看到 可以看到是UTF-8編碼格式的,我們需要修改其為GBK編碼。 2、在cmd下輸入命令:chcp 936 即可修改為GBK編碼。修改後的結 ...
  • 換了一臺新電腦, 在使用 ant 拷貝大量文件的時候 cmd 視窗過了很久沒有繼續輸出新的內容,遠遠超過平時的耗時, 以為已經卡死 按下 ctrl + c 取消, 這時並沒有取消, 而是輸出了新內容,顯示整個過程已經完成 build success了 。 執行其他耗時命令也是這樣,不繼續輸出。 go ...
  • 一、μCos-ii _概述 網上關於μCosii的文章多不勝數,本人學習的過程中也參考了很多人的理解和想法,看的是盧有亮老師的《嵌入式實時操作系統-μC/OS原理與實踐》(第2版),同時也參考了邵貝貝老師的《嵌入式實時操作系統μCOS-II》,斷斷續續一個月看了幾遍書,也在stm32上簡單移植了μC ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...