1. 程式人生 > >Ubuntu 編譯安裝搭配LNMP 環境

Ubuntu 編譯安裝搭配LNMP 環境

sage init ubun stat support ... col php安裝 啟動

這裏用Nginx1.2.0+mysql5.6.33+php5.6.2搭配安裝環境

---------------------------------------------Nginx BEGIN---------------------------------------------

使用命令下載nginx安裝包,用的是穩定版, 這裏下載: <nginx1.6.2>

技術分享

下載下來後就解壓一下

技術分享

解壓後得到一個nginx-1.12.0的文件夾

技術分享

進入文件夾, 運行命令:

技術分享

回車運行腳本配置後, 這裏要註意一下, 有可能會缺失zlib, ssh等庫, 這個沒關系, 查找 sudo apt-cache search xxx(庫) 然後 sudo apt-get install xxx(對應庫名) 就行了

這裏可以參考: Nginx官網安裝 的文章

成功後再運行:

sudo make
sudo make install

要想加入自啟動的話, 得在/etc/init.d/ 下建nginx 裏面填上

#! /bin/sh
###BEGIN INIT INFO
# Provides:     nginx
# Required-Start:  $all
# Required-Stop:   $all
# Default-Start:   2 3 4 5
# Default-Stop:   0 1 6
# Short-Description: starts the nginx web server
# Description:    starts nginx using start
-stop-daemon ### END INIT INFO PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/local/nginx/sbin/nginx NAME=nginx DESC=nginx test -x $DAEMON || exit 0 # Include nginx defaults if available if [ -f /etc/default/nginx ] ; then . /etc/default/nginx # . /usr/local/nginx/conf fi set -e .
/lib/lsb/init-functions case "$1" in start) echo -n "Starting $DESC: " start-stop-daemon --start --quiet --pidfile /usr/local/nginx/logs/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS || true echo "$NAME." ;; stop) echo -n "Stopping $DESC: " start-stop-daemon --stop --quiet --pidfile /usr/local/nginx/logs/$NAME.pid --exec $DAEMON || true echo "$NAME." ;; restart|force-reload) echo -n "Restarting $DESC: " start-stop-daemon --stop --quiet --pidfile /usr/local/nginx/logs/$NAME.pid --exec $DAEMON || true sleep 1 start-stop-daemon --start --quiet --pidfile /usr/local/nginx/logs/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS || true echo "$NAME." ;; reload) echo -n "Reloading $DESC configuration: " start-stop-daemon --stop --signal HUP --quiet --pidfile /usr/local/nginx/logs/$NAME.pid --exec $DAEMON || true echo "$NAME." ;; status) status_of_proc -p /usr/local/nginx/logs/$NAME.pid "$DAEMON" nginx && exit 0 || exit $? ;; *) N=/etc/init.d/$NAME echo "Usage: $N {start|stop|restart|reload|force-reload|status}" >&2 exit 1 ;; esac exit 0

啟動nginx 和看是否啟動進程成功

技術分享

瀏覽器運行 localhost 看到這個就說明啟動成功了:

技術分享

---------------------------------------------Nginx END---------------------------------------------

---------------------------------------------MySQL BEGIN---------------------------------------------

1 通過命令下載: http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz

技術分享

2 解壓後直接復制到軟件夾, 免安裝

//解壓
tar -zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
//復制解壓後的mysql目錄
sudo cp -r mysql-5.6.33-linux-glibc2.5-x86_64 /usr/local/mysql

3 給權限

cd /usr/local/mysql
//新建一個數據庫數據存放文件夾
sudo mkdir ./data/mysql
//新建庫 設user為mysql和數據文件路徑
./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/mysql
//復制一個啟動器
cp support-files/mysql.server /etc/init.d/mysqld
//給權限 755 [rwx-rx-x]
sudo chmod 755 /etc/init.d/mysqld

4 配置init.d/mysqld

sudo /etc/init.d/mysqld

技術分享

5 啟動測試

sudo service mysqld start

這裏可能出現的錯誤:

技術分享

可能原因

[一] /usr/local/mysql/data/mysql.pid 文件沒有寫的權限

解決:

sudo chmod -R 755 /usr/local/mysql/data

[二] 可能進程裏已經存在有mysql進程了

解決:

ps -aux | grep mysql
sudo kill pid

我這裏就是這個原因, kill掉進程後重啟

技術分享

進入mysql看看;;;

技術分享

成功了.....

---------------------------------------------MySQL END---------------------------------------------

---------------------------------------------php BEGIN---------------------------------------------

//下載
wget http://mirrors.sohu.com/php/php-5.6.2.tar.gz
//解壓
tar -zxvf php-5.6.2.tar.gz
//進入php目錄
cd php-5.6.2
//運行腳本
sudo ./configure --prefix=/usr/local/php --enable-fpm --enable-mbstring --with-mysql=/usr/local/mysql
//編譯php
sudo make
sudo make install
註: --enable-fpm 開啟phpfastcgi功能
  --with-mysql=/usr/local/mysql 啟用php支持mysql功能 後面是mysql數據庫的安裝路徑

技術分享

執行sudo make

技術分享

時間較長....這裏好可怕,.,,.,.,.,.,漫長的等待後會看到....

技術分享

執行sudo make install

技術分享

查看php版本

技術分享

//復制php安裝文件提供的模板作為php.ini
sudo cp php.ini-production /usr/local/lib/php.ini
//配置php-fpm
sudo cp /usr/local/php/lletc/php-fpm.conf.default /usr/local/etc/php-fpm.conf
//讓php-fpm以服務的形式啟動
sudo cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

跑一下看看...

技術分享

ok了....

---------------------------------------------php END---------------------------------------------

參考自:

http://www.cnblogs.com/bookwed/p/5896619.html

http://ilanni.blog.51cto.com/526870/1569322/

Ubuntu 編譯安裝搭配LNMP 環境