CentOS6.8源碼包編譯安裝搭建LNMP(Linux+Nginx+MySQL+PHP)環(huán)境

安裝包請各位自行解決哈膛堤,建議去各官網(wǎng)下載最新穩(wěn)定版,不多說晌该,直接開搞

常規(guī)依賴包安裝

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openldap openldap-devel openldap-clients openldap-servers make zlib-devel pcre-devel openssl-devel libtool* git tree bison perl gd gd-devel

安裝libiconv

有了這個之后就可以在PHP里使用iconv函數(shù)來轉(zhuǎn)換字符編碼啦肥荔,比如想將字符串的編碼從GBK轉(zhuǎn)到UTF-8,就用: iconv('GBK', 'UTF-8', $str);

tar zxvf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local/libiconv
make && make install
cd ..

安裝libmcrypt,mhash,mcrypt

如果PHP自帶的加密算法不能滿足你的需求朝群,就應(yīng)該考慮第三方加密擴展庫了(建議一定要裝呀燕耿,自己寫代碼可能沒用到,但是一些PHP框架可是要用到的姜胖,比如Laravel)誉帅。
按順序安裝libmcrypt,mhash,mcrypt

tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure
make && make install
cd ..
tar jxvf mhash-0.9.9.9.tar.bz2
cd mhash-0.9.9.9
./configure
make && make install
cd ..
tar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8
./configure
make && make install
cd ..

編譯mcrypt如果報錯:configure: error: *** libmcrypt was not found

echo '/usr/local/lib/'>>/etc/ld.so.conf
ldconfig

編譯mcrypt如果報錯:/bin/rm: cannot remove 'libtoolT': No such file or directory
修改 configure 文件,找到RM='$RM'并改為RM='$RM -f'就行啦

安裝CMake工具

MySQL從5.5版本開始右莱,通過./configure進(jìn)行編譯配置方式已經(jīng)被取消堵第,取而代之的是cmake工具

tar zxvf cmake-3.7.2.tar.gz
cd cmake-3.7.2
./bootstrap && make && make install
cd..

安裝MySQL

#卸載舊版本
rpm -e mysql --nodeps
#創(chuàng)建mysql用戶
groupadd mysql && useradd -g mysql -M mysql
tar zxvf mysql-5.6.24.tar.gz
cd mysql-5.6.24
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DMYSQL_USER=mysql \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_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 \
-DENABLE_DOWNLOADS=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_DEBUG=0 \
-DMYSQL_MAINTAINER_MODE=0 \
-DWITH_SSL:STRING=bundled \
-DWITH_ZLIB:STRING=bundled
make && make install
#修改目錄權(quán)限
chown -R mysql:mysql /usr/local/mysql
#拷貝配置文件(注意:如果/etc目錄下面默認(rèn)有一個my.cnf,直接覆蓋即可)
cp support-files/my-default.cnf  /etc/my.cnf
#編輯配置文件,在 [mysqld] 部分增加下面一行
vi /etc/my.cnf
datadir = /usr/local/mysql/data  #添加MySQL數(shù)據(jù)庫路徑
#執(zhí)行初始化配置腳本隧出,創(chuàng)建系統(tǒng)自帶的數(shù)據(jù)庫和表
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
#加入系統(tǒng)服務(wù)
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
#啟動mysql
service mysqld start
#開機啟動
chkconfig mysqld on
#加入環(huán)境變量
echo 'PATH=/usr/local/mysql/bin:$PATH'>>/etc/profile
export PATH
#讓配置生效
source /etc/profile
#設(shè)置root密碼踏志,默認(rèn)是沒有密碼的
/usr/local/mysql/bin/mysqladmin -uroot -p password
cd ..

安裝PHP

tar zxvf php-5.6.30.tar.gz
cd php-5.6.30
./configure \
--prefix=/usr/local/php \
--with-fpm-user=www --with-fpm-group=www \
--with-config-file-path=/usr/local/php/etc \
--with-mhash --with-mcrypt --enable-bcmath \
--enable-mysqlnd --with-mysql --with-mysqli --with-pdo-mysql \
--with-gd --enable-gd-native-ttf --with-jpeg-dir --with-png-dir --with-freetype-dir \
--enable-fpm \
--enable-mbstring \
--enable-pcntl \
--enable-sockets \
--enable-opcache \
--with-openssl \
--with-zlib \
--with-curl \
--with-libxml-dir \
--with-iconv-dir
make && make install
#移動生成php-fpm配置文件
mv /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
#復(fù)制生成一份php配置文件
cp php.ini-production /usr/local/php/etc/php.ini
#將php-fpm加入系統(tǒng)服務(wù)
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
#賦予執(zhí)行權(quán)限
chmod +x /etc/init.d/php-fpm
#開機啟動
chkconfig php-fpm on
#創(chuàng)建www用戶
groupadd www && useradd -d /home/www -g www www
#啟動php-fpm
service php-fpm start
cd ..

如果編譯報錯:gcc: Internal error: Killed (program cc1),在編譯參數(shù)后加
--disable-fileinfo
編輯/etc/profile將php加入環(huán)境變量(和前面mysql一樣)

修改PATH=/usr/local/php/bin:/usr/local/mysql/bin:$PATH
export PATH
source /etc/profile

安裝Nginx

tar zxvf nginx-1.10.2.tar.gz 
cd nginx-1.10.2
./configure \
--user=www \
--group=www \
--prefix=/usr/local/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/run/nginx.pid \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--with-http_ssl_module \
--with-pcre

接下來添加Nginx啟動管理腳本/etc/init.d/nginx
關(guān)于啟動腳本請參考鏈接Nginx啟動管理腳本胀瞪,修改腳本變量nginx="/usr/local/nginx/sbin/nginx"针余,保險起見其它變量也盡量核對下

chmod +x /etc/init.d/nginx
service nginx start #啟動nginx服務(wù)
chkconfig nginx on #開機啟動
cd ..

Nginx配置相關(guān)的內(nèi)容后續(xù)有空會補充
至此,LNMP環(huán)境已搭建完畢凄诞。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末圆雁,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子帆谍,更是在濱河造成了極大的恐慌伪朽,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件汛蝙,死亡現(xiàn)場離奇詭異烈涮,居然都是意外死亡朴肺,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進(jìn)店門坚洽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來戈稿,“玉大人,你說我怎么就攤上這事讶舰“暗粒” “怎么了?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵跳昼,是天一觀的道長般甲。 經(jīng)常有香客問我,道長鹅颊,這世上最難降的妖魔是什么欣除? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮挪略,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘滔岳。我一直安慰自己杠娱,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布谱煤。 她就那樣靜靜地躺著摊求,像睡著了一般。 火紅的嫁衣襯著肌膚如雪刘离。 梳的紋絲不亂的頭發(fā)上室叉,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天,我揣著相機與錄音硫惕,去河邊找鬼茧痕。 笑死,一個胖子當(dāng)著我的面吹牛恼除,可吹牛的內(nèi)容都是我干的踪旷。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼豁辉,長吁一口氣:“原來是場噩夢啊……” “哼令野!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起徽级,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤气破,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后餐抢,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體现使,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡低匙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了朴下。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片努咐。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖殴胧,靈堂內(nèi)的尸體忽然破棺而出渗稍,到底是詐尸還是另有隱情,我是刑警寧澤团滥,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布竿屹,位于F島的核電站,受9級特大地震影響灸姊,放射性物質(zhì)發(fā)生泄漏拱燃。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一力惯、第九天 我趴在偏房一處隱蔽的房頂上張望碗誉。 院中可真熱鬧,春花似錦父晶、人聲如沸哮缺。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽尝苇。三九已至,卻和暖如春埠胖,著一層夾襖步出監(jiān)牢的瞬間糠溜,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工直撤, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留非竿,地道東北人。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓谋竖,卻偏偏與公主長得像汽馋,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子圈盔,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內(nèi)容

  • 更改ip和dnsVi /etc/sysconfig/network-scripts/ifcfg-eth0vi /...
    Xwei_閱讀 1,800評論 0 3
  • 一豹芯、配置防火墻,開啟80端口驱敲、3306端口 CentOS 7.0默認(rèn)使用的是firewall作為防火墻铁蹈,這里改為i...
    ArleyDu閱讀 2,081評論 0 0
  • 啊 公司要開始新項目 移動的app 名字叫安好 運維太坑爹了 給了個破配置 Xeon(TM) CPU 3.40...
    xiasix閱讀 1,456評論 0 2
  • (centos7+nginx1.9+mysql5.6+php7) 1.準(zhǔn)備工作: 1)把所有的軟件安裝在/data...
    Tshare_XUN閱讀 589評論 0 0
  • 前面幾篇文章和大家分享了yum和brew安裝PHP環(huán)境,對于開發(fā)和測試環(huán)境來說众眨,這已經(jīng)足夠了 握牧,但如果是生產(chǎn)環(huán)境容诬,...
    你東哥呀閱讀 258評論 0 5