使用編譯搭建LNMP環境

LNMP=Linux+Nginx+MySQL+phpphp


因此搭建LNMP須要逐一安裝這幾個包html

下面咱們就逐一安裝各類包mysql

安裝環境centos6.8_64nginx

須要軟件包的朋友能夠在評論區留言c++

 


1、安裝Nginx1.10.3sql

卸載Linux自帶的MySQL5.1.7三、安裝Nginx數據庫

使用下面命令卸載vim

yum remove mysql -y
安裝Nginx須要的依賴包
yum -y install gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre*

顯示pcre*安裝不成功centos

如今咱們須要把pcre*api

上傳並解壓到指定的目錄

tar zxf pcre-8.38.tar.gz -C /usr/local/src

上傳Nginx包並解壓到指定位置、併到Nginx包目錄下

rz nginx-1.10.3.tar.gz

 

tar zxf nginx-1.10.3.tar.gz -C /usr/local/src; cd /usr/local/src/nginx-1.10.3

建立Nginx用戶

[root@juny-11 nginx-1.10.3]# useradd -M -s /sbin/nologin nginx

useradd -M -s /sbin/nologin nginx

開始編譯

./configure --prefix=/usr/local/nginx --with-http_dav_module --with-http_stub_status_module --with-http_addition_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-pcre=/usr/local/src/pcre-8.38 --user=nginx --group=nginx

下一步,使用make -j 4

[root@juny-11 nginx-1.10.3]# make -j 4

 make -j 4

開始編譯安裝

[root@juny-11 nginx-1.10.3]# make install

make install

編譯安裝結束之後修改配置支持php文件

增長一個Nginx用戶;修改弟66行的html的配置文件

 

把前面的註釋去掉並把Nginx的網頁路徑增長到相應的位置

保存並退出

建立一個軟鏈接

[root@juny-11 ~]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

 ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

驗證Nginx的安裝

nginx

  

 

nginx -t 

[root@juny-11 ~]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

給Nginx一個執行權限

[root@juny-11 ~]# chmod +x /etc/init.d/nginx

增長開機自啓動

[root@juny-11 ~]# chkconfig --add nginx

chkconfig --add nginx

設置開機自啓動

[root@juny-11 ~]# chkconfig nginx on

chkconfig nginx on 

測試、測試前先關閉防火牆

[root@juny-11 ~]# iptables -F

 iptables -F

在瀏覽器上輸入本服務器的ip地址進行測試

表示安裝成功

如是虛擬機的能夠拍攝一個快照保存


 

2、編譯安裝MySQL

準備MySQL 5.6.26的安裝包、能夠根據這兩個連接下載安裝包

http://dev.mysql.com/doc/refman/5.6/en/getting-mysql.html

http://dev.mysql.com/downloads/mirrors.htm

 安裝編譯須要的依賴包

[root@juny-11 ~]# yum install gcc-c++ gdb make ncurses-devel bison-devel -y

yum install gcc-c++ gdb make ncurses-devel bison-devel -y

安裝結束依賴包

建立MySQL用

[root@juny-11 ~]# groupadd mysql

 groupadd mysql

建立組

[root@juny-11 ~]# useradd -M -s /sbin/nologin -r -g mysql mysql

useradd -M -s /sbin/nologin -r -g mysql mysql

  

 

進行解壓並安到指定目錄裏面去

[root@juny-11 ~]# tar zxf mysql-5.6.26.tar.gz -C /usr/local/src/ ; cd /usr/local/src/mysql-5.6.26 

tar zxf mysql-5.6.26.tar.gz -C /usr/local/src/ ; cd /usr/local/src/mysql-5.6.26

開始編譯

cmake \
 -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
 -DDEFAULT_CHARSET=utf8 \
 -DDEFAULT_COLLATION=utf8_general_ci \
 -DWITH_EXTRA_CHARSETS=all \
 -DWITH_MYISAM_STORAGE_ENGINE=1\
 -DWITH_INNOBASE_STORAGE_ENGINE=1\
 -DWITH_MEMORY_STORAGE_ENGINE=1\
 -DWITH_READLINE=1\
 -DENABLED_LOCAL_INFILE=1\
 -DMYSQL_DATADIR=/usr/local/mysql/data \
 -DMYSQL-USER=mysql

使用make開始編譯、編譯大概須要10分鐘左右,主要是看本身的配置

[root@juny-11 mysql-5.6.26]# make -j 4

make -j 4

編譯安裝

[root@juny-11 mysql-5.6.26]# make install

 make install

配置MySQL

更改屬主

[root@juny-11 mysql-5.6.26]# chown -R mysql:mysql /usr/local/mysql/

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

覆蓋配置文件並更改my.cnf的位置

[root@juny-11 ~]#  cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf  

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

拷貝啓動腳本

[root@juny-11 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

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

修改啓動 配置文件

[root@juny-11 ~]# vim /etc/init.d/mysqld 

 vim /etc/init.d/mysqld 

 

給MySQL 777權限

[root@juny-11 ~]# chmod 777 /etc/init.d/mysqld

chmod  777 /etc/init.d/mysqld

增長開啓啓動並設置開機自啓

[root@juny-11 ~]# chkconfig --add mysqld
[root@juny-11 ~]# chkconfig mysqld on

chkconfig --add mysqld && chkconfig mysqld on

初始化數據庫(重要)

初始化數據庫出現問題

[root@juny-11 ~]# /usr/local/mysql/scripts/mysql_install_db --user=mysql
FATAL ERROR: Could not find ./bin/my_print_defaults

If you compiled from source, you need to run 'make install' to
copy the software into the correct location ready for operation.

If you are using a binary release, you must either be at the top
level of the extracted archive, or pass the --basedir option
pointing to that location.

使用yum undate -y 更新系統

添加服務,拷貝服務腳本到init.d目錄

cp support-files/mysql.server /etc/init.d/mysql

啓動MySQL 

service mysql start  

啓動成功之後,配置MySQL密碼爲123456

mysql> SET PASSWORD = PASSWORD('123456');

SET PASSWORD = PASSWORD('123456');

安裝完成

 


 

 

3、安裝php

安裝須要的依賴包 

  

[root@juny-11 ~]# yum -y install php-mcrypt libmcrypt libmcrypt-devel php-pear libxml2 libxml2-devel curl curl-devel libjpeg libjpeg-devel libpng libpng-devel

 yum -y install php-mcrypt libmcrypt libmcrypt-devel php-pear libxml2 libxml2-devel curl curl-devel libjpeg libjpeg-devel libpng libpng-devel

解壓php-7.0.5並進入到該目錄裏面

[root@juny-11 ~]# tar zxf php-7.0.5.tar.gz -C /usr/local/src/; cd /usr/local/src/php-7.0.5

 tar zxf php-7.0.5.tar.gz -C /usr/local/src/; cd /usr/local/src/php-7.0.5

開始配置

[root@juny-11 php-7.0.5]# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/ --enable-fpm --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --disable-fileinfo --enable-maintainer-zts

 ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/ --enable-fpm  --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --disable-fileinfo --enable-maintainer-zts 

結束後、開始編譯並安裝

[root@juny-11 php-7.0.5]# make -j 4 && make install

 make -j 4 && make install

  編譯安裝結束之後

修改fpm配置php-fpm.conf.default文件名稱

[root@juny-11 php-7.0.5]# cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.conf

問是否要覆蓋已有的文件,若有出現直接按 y 回車

cp: overwrite `/usr/local/php/etc/php-fpm.conf'? y

cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.conf

  修改運行用戶和組

 

[root@juny-11 php-7.0.5]# vim /usr/local/php/etc/php-fpm.conf

vim /usr/local/php/etc/php-fpm.conf

  

 

保存並退出

 

複製php.ini 配置文件

[root@juny-11 php-7.0.5]# cp /usr/local/src/php-7.0.5/php.ini-production /usr/local/php/php.ini

cp /usr/local/src/php-7.0.5/php.ini-production /usr/local/php/php.ini

 複製php-fpm啓動腳本到init.d 

[root@juny-11 php-7.0.5]# cp /usr/local/src/php-7.0.5//sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

cp /usr/local/src/php-7.0.5//sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

  

賦予執行權限

[root@juny-11 php-7.0.5]# chmod +x /etc/init.d/php-fpm

chmod +x /etc/init.d/php-fpm 

 

增長到開機啓動項裏面去

[root@juny-11 php-7.0.5]# chkconfig --add php-fpm

chkconfig --add php-fpm

  

設置開機自啓動

[root@juny-11 php-7.0.5]# chkconfig php-fpm on 

chkconfig php-fpm on 

 

重啓php-fpm服務

[root@juny-11 php-7.0.5]# /etc/init.d/php-fpm restart

/etc/init.d/php-fpm restart

  

配置驗證文件

[root@juny-11 php-7.0.5]# vim /usr/local/nginx/html/a.php

vim /usr/local/nginx/html/a.php

把下面內容寫到文件裏面

  

<?php
        phpinfo();
?>            

 

而後在瀏覽器網址的地方輸入本身的ip地址加是/a.php

表示已經成功安裝php

這樣咱們的LNMP的環境就編譯安裝完成了


 

 

 

若有須要軟件的能夠在評論地方留言

 

 

 

 

 

-----------------歡迎你們指導-----------------

相關文章
相關標籤/搜索