Ubuntu 編譯安裝搭配LNMP 環境

来源:http://www.cnblogs.com/wherein/archive/2017/05/25/6904210.html
-Advertisement-
Play Games

這裡用Nginx1.2.0+mysql5.6.33+php5.6.2搭配安裝環境 Nginx BEGIN 使用命令下載nginx安裝包,用的是穩定版, 這裡下載: <nginx1.6.2> 下載下來後就解壓一下 解壓後得到一個nginx-1.12.0的文件夾 進入文件夾, 運行命令: 回車運行腳本配 ...


這裡用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/

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 首先打開navicat,選擇數據傳輸。 你可以選擇一個表或者多個表,然後開始傳輸。 如果出現下圖的問題,則是時間精度不一致 解決方案,則是將數據轉換成文件存儲例如:device.sql,然後將文件中時間精度7改成6,然後執行語句即可。 insert語句直接執行,工具已經幫我們把to_date轉換成m ...
  • 背景簡介: Oracle版本:11.2.0.4 OS 版本:OEL5.8 在一次Oracle的Dataguard正常switchover過程中,遇到了一個極其詭異的問題,一條主業務的SQL語句在新主庫的執行時間由之前的毫秒級別完成變成了20-60秒不等,為避免高峰業務超時必須儘快進行優化,否則只能走 ...
  • Mysql是不區分大小寫 要求伺服器告訴他的版本號 SELECT VERSION(); mysql> SELECT VERSION();+ +| VERSION() |+ +| 5.7.18 |+ +1 row in set (0.09 sec) mysql> 當前時間 SELECT CURRENT ...
  • 方法一:用SUM統計 前提:查詢的數據表中需要有統計數量的字串; 語法: SELECT SUM(CASE WHEN MONTH(StartTime) =1 THEN Quantity ELSE 0 END) '1', SUM(CASE WHEN MONTH(StartTime) =2 THEN Qu ...
  • socket筆記 socket類型 socket函數 ...
  • The post shows you how to remove a specified service entry from the win10 service list. ...
  • 使用cat命令進行文件的縱向合併,具體命令如下所示(註意:>代表將左邊命令的執行結果以覆蓋的方式放到右邊,>>代表將左邊命令的執行結果追加到右邊) 關於tar命令的一些用法: tar 命令用來將很多文件打包成一個單一的磁帶或者磁碟歸檔,並可從歸檔文件恢復出文件列表。當你需要發送大量文件時或者傳輸文件 ...
  • I2C(IIC,Inter-Integrated Circuit),兩線式串列匯流排,由PHILIPS公司開發用於連接微控制器及其外圍設備。 它是由數據線SDA和時鐘SCL構成的串列匯流排,可發送和接收數據。在CPU與被控IC之間、IC與IC之間進行雙向傳送,高速IIC匯流排一般可達400kbps以上。I ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...