1. 程式人生 > >LNMP環境搭建,自啟動 php7,mysql5.6,nginx1.11

LNMP環境搭建,自啟動 php7,mysql5.6,nginx1.11

對於初學者,如果不太確定自己的系統是否能夠搭建起來服務,可以嘗試使用 CentOS6.8_64位系統.
 
本文匹配的LNMP原始碼連結:
http://download.csdn.net/detail/u010145312/9877658
http://download.csdn.net/detail/u010145312/9866363

檢視一下系統版本 cat /etc/issue


  將下載的軟體包安裝在目錄 /usr/local/src/. 軟體包:
http://download.csdn.net/detail/u010145312/9866362
http://download.csdn.net/detail/u010145312/9866363

cd /usr/local/src/



安裝依賴包 yum -y install gcc automake autoconf libtool make gcc-c++ glibc libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel pcre pcre-devel libmcrypt libmcrypt-devel cmake


安裝PHP tar zxvf php-7.1.5.tar.gz cd php-7.1.5 ./configure  --help ./configure --prefix=/usr/local/php7.1.5 --with-curl --with-bz2 --with-zlib --with-mhash --with-pcre-regex --with-mysqli=mysqlnd --with-pdo-mysql  --with-gd --with-jpeg-dir --with-png-dir --with-openssl --with-pdo-mysql --with-libxml-dir --with-freetype-dir --with-iconv --enable-opcache --enable-bcmath  --enable-ftp --enable-shmop --enable-fpm --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --enable-calendar --enable-zip --enable-mbstring --enable-pdo make && make install 安裝完成後
,進入 /usr/local目錄下,檢視新安裝的php7.1.5 cd /usr/local/ ls ln -s php7.1.5 php
  配置檔案 cd /usr/local/php/etc cp php-fpm.conf.default php-fpm.conf //修改php-fpm.conf vi php-fpm.conf //將;pid = run/php-fpm.pid 前面的分號刪掉 建立 www 使用者 groupadd www useradd -g www www cp  /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf vim /usr/local/php/etc/php-fpm.d/www.conf user = nobody group = nobody 修改為: user = www group = www
  //建立php.ini cp /usr/local/src/php-7.1.5/php.ini-development /usr/local/php/lib/php.ini 生產配置 可以複製 php.ini-production //拷貝php-fpm指令碼至/etc/init.d目錄 cp /usr/local/src/php-7.1.5/sapi/fpm/init.d.php-fpm  /etc/init.d/php-fpm //設定許可權並啟動php-fpm: chmod755 /etc/init.d/php-fpm /etc/init.d/php-fpm start chkconfig--add php-fpm //最後,給出php-fpm以服務的方式停止和啟動 service php-fpm stop service php-fpm start 檢視PHP是否執行: ps -ef|grep php 命令列使用php ln -s /usr/local/php/bin/php /usr/bin/php php –v


安裝nginx cd /usr/local/src/ 安裝nginx變數除錯模組 tar zxvf echo-nginx-module-0.58.tar.gz  tar zxvf nginx-1.11.2.tar.gz cd nginx-1.11.2 ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-http_gzip_static_module --add-module=/usr/local/src/echo-nginx-module-0.58 make && make install 啟動nginx cd /usr/local/nginx ./sbin/nginx 檢視是否在執行 ps -ef | grep nginx 配置開機啟動 首先寫一個shell指令碼,指令碼名稱:nginx

 
#!/bin/bash
# chkconfig: 35 85 15 
# description: Nginx is an HTTP(S) server, HTTP(S) reverse
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="nginx daemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME
SCRIPTNAME=/etc/init.d/$NAME
test -x $DAEMON || exit 0
d_start(){
    $DAEMON || echo -n " already running"
}
d_stop() {
    $DAEMON -s quit || echo -n " not running"
}
d_reload() {
    $DAEMON -s reload || echo -n " counld not reload"
}
case "$1" in
start)
    echo -n "Starting $DESC:$NAME"
    d_start
    echo "."
;;
stop)
    echo -n "Stopping $DESC:$NAME"
    d_stop
    echo "."
;;
reload)
    echo -n "Reloading $DESC configuration..."
    d_reload
    echo "reloaded."
;;
restart)
    echo -n "Restarting $DESC: $NAME"
    d_stop
    sleep 2
    d_start
    echo "."
;;
*)
    echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2
    exit 3
;;
esac
exit 0


設定可執行許可權 chmod +x /etc/rc.d/init.d/nginx 新增系統服務 chkconfig --add nginx service nginx restart 檢視IP地址: ifconfig
  配置防火牆: vim /etc/sysconfig/iptables 新增一行: -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
  service iptables restart 確認nginx服務開啟, ps -ef|grep nginx 在瀏覽器輸入IP地址,即可測試 nginx伺服器搭建成功  
配置nginx支援php cd /usr/local/nginx/conf/ vim nginx.conf 將第2行的 #user  nobody;  修改為 user  www www;   45行的
index index.html index.htm;

修改為
index index.html index.htm index.php;


6571行的註釋符去掉


修改69行資料: fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
  重啟nginx服務: service nginx restart 編寫php檔案: cd /usr/local/nginx/html/ vim index.php
  在瀏覽器輸入 IP/index.php 訪問PHP檔案
  簡單的說一下 echo-nginx-module 編譯 nginx的時候,我們加入了 echo-nginx-module,這個模組可以使nginx輸出一些簡單的資訊,方便獲取nginx的變數資訊. 修改 /usr/local/nginx/conf/nginx.conf檔案 default_type  application/octet-stream; 修改為: default_type  text/plain;   47-50行加入: set $foo hello ; echo "$foo"; echo $args; echo $document_root; 儲存,退出  
重啟 nginx服務 service nginx restart 此時再訪問IP ,會打印出變數資訊.
  安裝mysql yum –y  install gcc gcc-c++ ncurses-devel perl  cd /usr/local/src/ tar zxvf cmake-2.8.10.2.tar.gz cd cmake-2.8.10.2 ./bootstrap && make && make install groupadd mysql useradd -r -g mysql mysql  建立安裝目錄: mkdir -p /usr/local/mysql 建立資料檔案目錄: mkdir -p /data/mysql cd /usr/local/src tar zxvf mysql-5.6.16.tar.gz cd mysql-5.6.16 設定編譯引數: cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/data/mysql -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1 重新執行配置,需要刪除CMakeCache.txt檔案 rm -f CMakeCache.txt  make && make install cd /usr/local/mysql  chown -R mysql:mysql . cd /data/mysql chown -R mysql:mysql .  cd /usr/local/mysql scripts/mysql_install_db --user=mysql --datadir=/data/mysql 切換mysql使用者,初始化資料: cd /usr/local/mysql chown -R mysql.mysql . su – mysql scripts/mysql_install_db exit cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf  如果/etc/my.cnf檔案存在,則覆蓋 cp support-files/mysql.server /etc/init.d/mysqld vim /etc/profile export 之前新增: PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
  儲存後,執行檔案 source /etc/profile  啟動mysql服務: service mysqld restart ps -ef|grep mysql 登陸mysql: mysql  

  安裝yaf cd /usr/local/src/ tar zxvf yaf-3.0.4.tgz cd yaf-3.0.4 /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make && make install 修改php.ini 檔案: vim /usr/local/php/lib/php.ini 新增 extension=yaf.so
儲存,退出. 重啟 PHP-fpm service php-fpm restart 保證nginx執行狀態下,瀏覽器訪問: IP/index.php 可以看到 yaf已經安裝成功.

 

安裝redis cd /usr/local/src/ tar zxvf redis-3.2.8.tar.gz cd redis-3.2.8 make

cd src 啟動redis服務: ./redis-server 或者,指定配置檔案啟動redis服務: ./redis-server redis.conf 測試客戶端程式redis-cliredis服務互動 ./redis-cli