LNMP的安裝配置
LNMP=Linux+Nginx+Mysql+PHP。
下面介紹它的安裝和配置說明。
整個安裝過程我們不採用預設安裝,而是自定義安裝,安裝在/home/zhaolincheung/local目錄下。
一.Mysql的安裝
1.下載安裝
解壓mysql的原始碼包mysql-5.1.50.tar.gz,切換到安裝目錄下,這裡安裝到當前使用者zhaolincheung的local目錄下,如下:./configure --prefix=/home/zhaolinchueng/local/mysql --sysconfdir=/home/zhaolinchueng/local/mysql
--localstatedir=/home/zhaolinchueng/local/mysql/data
--with-unix-socket-path=/home/zhaolinchueng/local/mysql/tmp/mysql.sock
--with-charset=utf8 --with-plugins=innobase --with-client-ldflags=-all-static
--with-mysqld-ldflags=-all-static
sysconfdir表示mysql的配置檔案路徑,localstatedir表示資料檔案路徑,socket配置和最後2個屬性主要用來提升效能。
如果要使用innodb引擎,記得加上--with-plugins=innobase。
然後執行:
make
makeinstall
2.配置
(1).複製/home/zhaolinchueng/local/mysql/share/mysql/my-medium.cnf到mysql根目錄下,改名為my.cnf。
切換到mysql的bin目錄下,執行:
./mysql_install_db --basedir=/home/zhaolinchueng/local/mysql --datadir=/home/zhaolinchueng/local/mysql/data
(2).複製/home/zhaolinchueng/local/mysql/libexec/mysqld到mysql的bin目錄下,啟動mysql服務
/home/zhaolinchueng/local/mysql/bin/mysqld_safe --ledir=/home/zhaolinchueng/local/mysql/bin
--log-error=/home/zhaolinchueng/local/mysql/data/t.err --datadir=/home/zhaolinchueng/local/mysql/data
--socket=/home/zhaolinchueng/local/mysql/tmp/mysql.sock --pid-file=/home/zhaolinchueng/local/mysql/data/mysqld.pid
(3).再用ps命令檢視mysql是否啟動,如果不能啟動用netstat命令檢查3306埠是否被佔用,如果是則修改my.cnf的埠配置。
切換到mysql的bin目錄下,執行./mysqladmin -u root password '123' 來修改root登入密碼。
修改/home/zhaolinchueng/local/mysql/share/mysql/mysql.server的程式碼:
pid_file=/home/zhaolinchueng/local/mysql/data/mysqld.pid
停止mysql服務:/home/zhaolinchueng/local/mysql/share/mysql/mysql.server stop
為了方便,可以把啟動和停止mysql服務命令寫成shell指令碼。
建議在my.cnf中新增sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"。二.Nginx安裝
1. 準備安裝包nginx-0.8.53.tar.gz,解壓,進入目錄
2. 執行
./configure --prefix=/home/zhaolincheung/local/nginx
make && make install
3. 其他配置
這樣的話預設的配置檔案為/home/zhaolincheung/local/nginx/conf/nginx.conf,執行檔案為/home/zhaolincheung/local/nginx/sbin/nginx,
pid檔案為/home/zhaolincheung/local/nginx/logs/nginx.pid,因此可以在使用者主目錄下建立啟動檔案start.sh和關閉檔案stop.sh,方便啟動和關閉nginx。
啟動檔案start.sh內容為:/home/zhaolincheung/local/nginx/sbin/nginx
關閉檔案內容為:
pid=`cat/home/zhaolincheung/local/nginx/logs/nginx.pid`
kill $pid
三.php-fpm安裝
1.介紹
Php-fpm是一個php fastcgi的程序管理器,是隻用於php的。Php-fpm其實是php-fpm原始碼的一個補丁,旨在將fastcgi程序管理整合進php包中,必須將它patch到你的php原始碼中。現在php 5.3.3以上版本都整合了php-fpm的分支,不需要在單獨安裝了。
Php-fpm的好處是:提供了更好的php程序管理方式,可以有效控制記憶體和程序、可以平滑過載和php配置,所以最終被php官方收錄了。在php進行configure時帶上--enable-fpm引數即可開啟php-fpm。
而Fastcgi是一個可伸縮的,高速地在web server和指令碼語言間互動的介面。Fastcgi的主要是把動態語言(如php)和web server分離開來。這種技術允許把web server和動態語言執行在不同的主機上,以大規模擴充套件和改進安全性而不損失生產效率。
2.安裝
準備好php-5.2.14.tar.gz和php-5.2.14-fpm-0.5.14.diff.gz,解壓php-5.2.14.tar.gz。
然後分別執行解壓和打補丁命令:
gzip -d php-5.2.14-fpm-0.5.14.diff.gz
patch -d php-5.2.14 -p1 < php-5.2.14-fpm-0.5.14.diff
這樣php 5.2.14就支援fastcgi了。php 5.3.x開始就內建了對fastcgi的支援,無需補丁,所以如果安裝php 5.3.x以上版本,則整個步驟二“php-fpm安裝”無需進行。
四.PHP安裝
安裝php需要安裝其他依賴:libxml2和libxml2-devel包。如果系統沒有安裝這些依賴,需要自己安裝,可以通過下面的命令:
yum install libxml2
yum install libxml2-devel –y
1.php5.3.3以下版本的安裝
./configure --prefix=/home/zhaolincheung/local/php --enable-fastcgi /
--enable-force-cgi-redirect --enable-fpm /
--with-config-file-path=/home/zhaolincheung/local/php/lib --with-mysql=/home/zhaolincheung/local/mysql /
--with-pdo-mysql=/home/zhaolincheung/local/mysql --with-curl=/home/zhaolincheung/local/curl --enable-mbstring
完成後再執行
make&& make install
2.php 5.3.3以上版本的安裝
php5.3.3及以上的版本內建了fpm ,此處用5.3.4舉例,下載後解壓,進入解壓後目錄 :
./configure --prefix=/home/zhaolinchueng/local/php --enable-fpm /
--with-config-file-path=/home/zhaolinchueng/local/php/lib --with-mysql=/home/zhaolincheung/local/mysql /
--with-pdo-mysql=/home/zhaolincheung/local/mysql --with-curl=/home/zhaolincheung/local/curl --enable-mbstring
然後再執行
make && make install
五.Nginx配置
1.nginx.conf的網際網路配置方法
工業界的配置方法如下:
首先開啟nginx的安裝目錄下的nginx.conf,這裡為/home/zhaolincheung/local/nginx/conf/nginx.conf,其內容如下:
user www www;
worker_processes 16;
error_log logs/nginx_error.log crit;
pid logs/nginx.pid;
worker_rlimit_nofile 51200;
events
{
use epoll;
worker_connections 51200;
}
http
{
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 8m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
fastcgi_intercept_errors on;
fastcgi_hide_header Pragma;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
autoindex off;
server_tokens off;
server_name_in_redirect off;
##################################################################################
log_format misc '$http_x_forwarded_for $remote_addr $host $server_addr [$time_local] "$request" $request_time'
' $status $body_bytes_sent "$http_referer" '
'"$http_user_agent"';
#################################################################################
include webim_analys_nginx.conf;#通過include包含虛擬主機1的配置檔案
include abc_nginx.conf;#通過include包含虛擬主機2的配置檔案
}
上面的檔案通過include來包含虛擬主機的配置檔案,這樣就相當於我們啟動了一個nginx服務,所以我們需要在/home/zhaolinchueng/local/nginx/conf/目錄下新建一個名為webim_analys_nginx.conf的檔案,內容如下:
server
{
listen 80;
server_name zhaolincheung.gj.com;
index index.html index.htm index.php;
root /data/webim/analys;
autoindex on;
location ~ .*\.(php|php5)?$
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fcgi.conf;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 1h;
}
location /(WEB-INF)/ {
deny all;
}
log_format webim_analys_access '$remote_addr $host $server_addr [$time_local] "$request" $request_time'
' $status $body_bytes_sent "$http_referer" '
'"$http_user_agent"'
'$request_body'
'$content_length';
access_log /data/webim/analys/log/access.log webim_analys_access;
}
說明:root表示網頁程式的存放目錄,這裡為/data/webim/analys。log_format是定義nginx輸出日誌的格式,其中日誌的位置在/data/webim/analys/log/access.log。所以,需要使用者建立一個目錄log,並在該目錄下建立一個access.log檔案。
2.啟動nginx,檢視配置是否正確執行/home/zhaolincheung/local/php/sbin/php-fpm ,然後啟動nginx,最後在/home/zhaolincheung/local/nginx/html資料夾下建立index.php,
輸出phpinfo看看成功沒,index.php內容如下:
<?php
echophpinfo();
?>
六.php配置
1.準備php.ini和php-fpm.conf檔案
把php原始碼解壓縮目錄下的php.ini-production複製到php的安裝目錄/home/zhaolincheung/local/php/lib下,並改名php.ini,
在/home/zhaolincheung/local/php/etc/本目錄下複製一份php-fpm.conf.default,並命名為php-fpm.conf
2. 開啟php-fpm.conf,去掉相應的分號註釋,最後如下
pid= run/php-fpm.pid
error_log= log/php-fpm.log
listen= 127.0.0.1:9000
pm =dynamic
pm.max_children= 50
pm.start_servers= 20
pm.min_spare_servers= 5
pm.max_spare_servers= 35
pm.max_requests= 500
3.php.ini的修改
php.ini牽扯到很多php的外掛,如對mysql的支援,對memcached的支援。
如果修改了php.ini,只需執行php-fpm,不必重啟nginx開發測試的時候最好是把php.ini的 display_errors 開啟,否則nginx遇錯直接給出500頁面,不會顯示錯誤資訊。
七.php-fpm的啟動、關閉和重啟
Php-fpm是管理php fastcgi的。php 5.3.3以上的版本的php-fpm 不再支援 php-fpm 以前具有的 /home/zhaolincheung/local/php/sbin/php-fpm (start|stop|reload)等命令,需要使用訊號控制。
1.php 5.3.3以下版本的啟動、關閉和重啟如下:
啟動:/home/zhaolincheung/local/php/sbin/php-fpmstart
關閉:/home/zhaolincheung/local/php/sbin/php-fpmstop
重啟:/home/zhaolincheung/local/php/sbin/php-fpmreload
2.php 5.3.3 以上版本的啟動、關閉和重啟如下:
master程序可以理解以下訊號:
INT,TERM 立刻終止;
QUIT平滑終止;
USR1重新開啟日誌檔案;
USR2平滑過載所有worker程序並重新載入配置和二進位制模組。
示例:
Php-fpm啟動:/home/zhaolincheung/local/php/sbin/php-fpm
php-fpm關閉:kill -INT `cat /home/zhaolincheung/local/php/var/run/php-fpm.pid`
php-fpm重啟:kill -USR2`cat /home/zhaolincheung/local/php/var/run/php-fpm.pid`
注:檢視php-fpm程序數:ps aux | grep -c php-fpm
八.php擴充套件(mysql/pdo/curl等)的單獨安裝
如果安裝php時,沒有指定--with-mysql、--with-pdo-mysql、--with-curl這些選項,則預設不會安裝對應的mysql、pdo和curl的擴充套件,需要安裝完php後,另行安裝,相對來講會比較麻煩,建議採用預設安裝。
不過,採用預設安裝的前提,是這些軟體已經安裝好,即mysql資料庫、curl已經安裝好,這時只需要指定--with-mysql、--with-pdo-mysql、--with-curl這些引數,就實現了安裝對應的php擴充套件。如下所示安裝php時,進行指定:
./configure --prefix=/home/zhaolinchueng/local/php --enable-fpm /
--with-config-file-path=/home/zhaolinchueng/local/php/lib --with-mysql=/home/zhaolincheung/local/mysql /
--with-pdo-mysql=/home/zhaolincheung/local/mysql --with-curl=/home/zhaolincheung/local/curl --enable-mbstring
下面舉例介紹php擴充套件的安裝方法:
1.Mysql擴充套件
(1)進入php原始碼目錄:cd /home/zhaolincheung/php-5.3.1/
(2)再進入php原始碼目錄下的mysql擴充套件原始碼目錄:cdext/mysql/
(3)呼叫已經編譯好的php裡面的phpsize:/home/zhaolincheung/local/php/bin/phpsize
(4)然後configure:./configure –with-php-config=/home/zhaolinchueng/local/php/bin/php-config–with-mysql=/home/zhaolincheung/local/mysql
注:/home/zhaolincheung/local/mysql為mysql的安裝目錄。
(5)然後make && make install
(6)編譯之後,系統自動把mysql.so放到了預設的php擴充套件目錄下(phpinfo可以檢視,這裡為/home/zhaolincheung/local/php/lib/php/extensions/no-debug-zts-20090626)。此時,需要我們把mysql.so更名為php_mysql.so。然後進入到/home/zhaolincheung/local/php/lib目錄下,修改php.ini,去掉;extensions=php_mysql.so前面的分號。
(7)重啟nginx和php-fpm。
相關推薦
LNMP安裝配置
裝配 .com 圖片 roc oot table shadow 庫文件 boot LNMP安裝配置 目錄bin:存放普通用戶可執行命令sbin:存放超級用戶可執行命令which iptables : 查看boot目錄:存放系統啟動所需(內核,映像
Chapter one:安裝配置LNMP
lnmp源碼安裝配置LNMP更新時間:2016-08-02系統環境:CentOS 6.5軟件環境:nginx 1.8.1、mysql 5.6.22、php 5.6.19本機IP :192.168.1.88、192.168.1.36關閉防火墻和安全機制#service iptables stop#setenf
CENTOS7+LNMP+zabbix3.2.6安裝配置
centos7+lnmp+zabbix3.2.6;linux centos7 nginx mysql php5.6.38 zabbix_server 3.2.61、安裝MySQL1.1、安裝MySQLrpm -ivh http://dev.mysql.com/get/mysql-community-relea
lnmp 安裝FTP服務 並配置FTP用戶
image pureftpd col 顯示 pan code nmp 成功 ref lnmp 默認是不帶FTP服務的,需要的童鞋要自行安裝.步驟也很簡單 一,進入lnmp目錄,找到pureftpd.sh 二,直接運行該腳本 ./pureftpd.sh
CentOS 6.4安裝配置LNMP服務器(Nginx+PHP+MySQL)
mysql- ket 是否 分號 使用 store 重啟 isa tpi 一 安裝篇 1. 安裝nginx yum check-update #更新yum源 yum remove httpd* php* #刪除系統自帶的軟件包 yum install nginx #安裝ng
CentOS 6 yum安裝配置lnmp服務器
設置密碼 客戶端 inux listening logs and cat 服務 load 一、準備: 1.配置防火墻,開啟80端口、3306端口編輯 /etc/sysconfig/iptables,添加如下條目: -A INPUT -m state --state
lnmp環境安裝配置tomcat + jdk
lnmt安裝jdk的版本 1.8● 各種版本可在官網http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 頁面下載● tar -zxvf jdk-8u171-linux-x64.tar.gz /
基於LNMP環境安裝配置phpMyAdmin4.8
LNMP PHP7 phpmyadmin nginx MySQL phpMyAdmin是一個以PHP為基礎、以Web-Base方式架構在網站主機上的、可以通過web方式管理和操作MySQL數據庫的管理工具。本文主要內容為基於LNMP環境安裝phpMyAdmin4.8。一、安裝環境1、主機I
lnmp 安裝包的的各種配置檔案目錄
LNMP相關軟體安裝目錄 Nginx 目錄: /usr/local/nginx/ MySQL 目錄 : /usr/local/mysql/ MySQL資料庫所在目錄:/usr/local/mysql/var/ MariaDB 目錄 : /usr/local/mariadb/
LNMP安裝目錄及配置檔案位置
LNMP相關軟體安裝目錄 Nginx 目錄: /usr/local/nginx/ MySQL 目錄 : /usr/local/mysql/MySQL資料庫所在目錄:/usr/local/mysql/var/MariaDB 目錄 : /usr/local/mariadb/MariaDB資料庫
lnmp環境配置laravel生產環境需要安裝的擴充套件
安裝完lnmp之後,我們還需要安裝zip,dom,mbstring等擴充套件。 安裝mbstring擴充套件 sudo apt-get install php7.0-mbstring 安裝do
lnmp安裝包配置tp5專案所需要的準備
配置 *.conf 檔案 新增配置檔案目錄 # 開啟nginx.conf配置檔案目錄 cd /usr/local/nginx/conf # 新增配置目錄 vim nginx.conf user www www; worker_processes a
安裝lnmp並配置允許遠端連線mysql
1、解壓縮 2、安裝(確保可以聯網) 3、根據需求配置,之後就是等待 4、安裝完成以後開啟瀏覽器,輸入localhost,看到這個即安裝成功 5、這個安裝很簡單,我這主要是講怎麼遠端連線mysql,因為lnmp預設是禁止遠
LNMP的安裝配置
LNMP=Linux+Nginx+Mysql+PHP。 下面介紹它的安裝和配置說明。 整個安裝過程我們不採用預設安裝,而是自定義安裝,安裝在/home/zhaolincheung/local目錄下。 一.Mysql的安裝 1.下載安裝 解壓mysql的原始碼包mysql
Linux Centos伺服器一鍵安裝配置LNMP/LAMP網站環境——寶塔建站視覺化(無需敲命令)
Linux網站環境LAMP/LNMP環境配置 寶塔面板的安裝流程 本文提供全流程,中文翻譯。 Chinar 堅持將簡單的生活方式,帶給世人!(擁有更好的閱讀體驗 —— 高解析度使用者請根據需求調整
LNMP安裝與配置之Nginx
file 軟件 inf nginx -t enable web服務 常用命令 第一個 服務 Nginx簡介 Nginx (engine x) 是一個高性能的HTTP和反向代理web服務器,同時也提供了IMAP/POP3/SMTP服務。Nginx是由伊戈爾·賽索耶夫為俄羅斯
Linux - vim安裝 配置與使用
格式 only ctx net height border term mona 方便 一 Vim 簡單介紹 曾經一直用vi,近期開始使用 vim,以下將兩者做一下比較。 vi和vim都是多模式編輯器,不同的是vim 是vi的升級版本號,它不僅兼容vi的全部指令,並且
Tomcat8.5的安裝配置
tomcat安裝配置1. 安裝JDKJDK官網地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html點擊"JDK DOWNLOAD"進入下載頁面下載JDK軟件包,註意需選中"Accept License Agreement"才
tomcat免安裝配置
base ice install file log 安裝配置 image images nbsp 1、首先設置環境變量CATALINA_BASE、CATALINA_HOME: 2、設置好環境變量後,打開bin目錄下的startup.jar,[email pro
CentOS6上新增硬盤並安裝配置grub文件
centos6上新增硬盤並安裝配置grub文件實例:為運行於虛擬機上的CentOS 6添加一塊新硬件,提供兩個主分區;(1) 為硬盤新建兩個主分區;並為其安裝grub; (2) 為硬盤的第一個主分區提供內核和ramdisk文件; 為第二個分區提供rootfs; (3) 為rootfs提供bash、ls、cat