LNMP環境搭建,自啟動 php7,mysql5.6,nginx1.11
阿新 • • 發佈:2019-02-09
對於初學者,如果不太確定自己的系統是否能夠搭建起來服務,可以嘗試使用 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
設定可執行許可權 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;
重啟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已經安裝成功.
cd src 啟動redis服務: ./redis-server 或者,指定配置檔案啟動redis服務: ./redis-server redis.conf 測試客戶端程式redis-cli和redis服務互動 ./redis-cli
本文匹配的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 安裝完成後
配置檔案 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
#!/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;
將65到71行的註釋符去掉
重啟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-cli和redis服務互動 ./redis-cli