這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
序言
Golang是個好東西啊。部署非常簡單,對於營運人員來說太爽了。
傳統的Nginx啊Apache啊,外加PHP以及各個外掛程式啊搞得頭暈。
用了Go之後就什麼都不需要了。只要把產生好的檔案向伺服器上一丟就ok。
目錄
一、Centos7 從零編譯Nginx+PHP+MySql
二、Centos7 從零配置Nginx+PHP+MySql
三、Centos7 從零編譯配置Memcached
一、準備工作
1.1 安裝或更新gcc gcc-c++
因為我安裝的Centos是絕對純潔滴。啥也沒有。沒轍了。只有先安裝個編譯器了。
# yum install gcc gcc-c++
1.2 建立需要使用的目錄
source 是用來存放源碼的檔案夾。package是用來存放編譯後的庫檔案。lnmp是我們真正需要的東西才放裡面。(nginx+mysql+memcached+php)
# mkdir /source/
# mkdir /package/
# mkdir /lnmp/
二、開始安裝(nginx篇)
2.1 解壓pcre
[官方網站] http://www.pcre.org/
命令流程:
# cd /source/
# wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.tar.gz# tar -zxvf pcre-8.38.tar.gz
說明:不需要編譯,只需要解壓就行。
2.2 解壓zlib
[官方網站] http://zlib.net/
命令流程:
# cd /source/
# wget http://zlib.net/zlib-1.2.8.tar.gz# tar -zxvf zlib-1.2.8.tar.gz
說明:不需要編譯,只需要解壓就行。
2.3 安裝nginx
[官方網站] http://nginx.org/
命令流程:
# cd /source/
# wget http://nginx.org/download/nginx-1.8.0.tar.gz# tar -zxvf nginx-1.8.0.tar.gz# cd nginx-1.8.0# ./configure --prefix=/lnmp/nginx --with-pcre=/source/pcre-8.38 --with-zlib=/source/zlib-1.2.8# make# make install
--with-pcre:用來設定pcre的源碼目錄。
--with-zlib:用來設定zlib的源碼目錄。
因為編譯nginx需要用到這兩個庫的源碼。
小章總結:
此處告一段落,nginx安裝完成。我們可以先滿足下自己的慾望心。開啟nginx服務看看Hello World吧。
啟動nginx
# /lnmp/nginx/sbin/nginx
啟動後可以再瀏覽器中開啟頁面,會顯示nginx預設頁面。
三、開始安裝(php篇)
3.1 安裝libxml2
[官方網站] http://xmlsoft.org/
命令流程:
# cd /source/
# wget ftp://xmlsoft.org/libxml2/libxml2-2.9.3.tar.gz# tar -zxvf libxml2-2.9.3.tar.gz# cd libxml2-2.9.3# ./configure \# --prefix=/package/libxml2 --with-python=no# make# make install
這裡--with-python=no是
3.2 安裝php
[官方網站] http://php.net/
命令流程:
# cd /source/# wget http://cn2.php.net/distributions/php-7.0.2.tar.gz# tar -zxvf php-7.0.2.tar.gz# cd php-7.0.2# ./configure \# --prefix=/lnmp/php \# --with-libxml-dir=/package/libxml2 \ //開啟libxml2庫的支援# --with-config-file-path=/lnmp/php/etc \ //設定檔所在目錄# --enable-mbstring \ //支援mbstring庫# --enable-fpm \ //支援php-fpm(推薦開啟)# --with-mysqli //開啟mysqli模組# make# make install
四、開始安裝(mysql篇)
4.1 安裝cmake
[官方網站] https://cmake.org/
命令流程:
# wget https://cmake.org/files/v3.4/cmake-3.4.1.tar.gz# tar -zxvf cmake-3.4.1.tar.gz# cd cmake-3.4.1# ./configure --prefix=/package/cmake# make# make install# export PATH=/package/cmake/bin:$PATH //設定環境變數。可忽略,只是為了你以後使用cmake方便點。
4.2 安裝ncurses
[官方網站] http://ftp.gnu.org/gnu/ncurses/
命令流程:
# wget http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz# tar -zxvf ncurses-6.0.tar.gz# cd ncurses-6.0# ./configure --prefix=/package/ncurese# make# make install
4.3 安裝mysql
[官方網站] http://www.mysql.com/
命令流程:
不帶boost安裝方式
// 這個是不帶boost版本的mysql源碼。你可以使用以下的參數在編譯過程中自動下載boost// -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/package/boost# wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.10.tar.gz# tar -zxvf mysql-5.7.10.tar.gz# cd mysql-5.7.10# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \# -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/package/boost \ //設定自動下載boost庫,並放到-DWITH_BOOST指定的路徑裡。# -DCURSES_LIBRARY=/package/ncurses/lib/libncurses.a \ //ncurses庫libncurses.a# -DCURSES_INCLUDE_PATH=/package/ncurses/include //ncurses庫標頭檔# make # make install
內建boost安裝方式
# wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-boost-5.7.10.tar.gz# tar -zxvf mysql-boost-5.7.10.tar.gz# cd mysql-5.7.10# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \# -DWITH_BOOST=/boost/boost_1_59_0 //boost庫的路徑# -DCURSES_LIBRARY=/package/ncurese/lib/libncurses.a \ //ncurses庫libncurses.a# -DCURSES_INCLUDE_PATH=/package/ncurses/include //ncurses庫標頭檔# make # make install
說明:mysql從5.7版本後就需要boost庫的支援了。並且非常噁心的是mysql需要指定的boost版本號碼,高了或低了都有可能導致編譯不通過。
到此,使用CentOS7上常用的、全新的Web模組基本已經完成了,剩下的就是對這些軟體進行配置咯。哈哈,其實代碼多,但是瞭解後真的挺簡單,就那幾個命令。怎麼樣?是不是蠻簡單的。