分離部署LNMP搭建WORDPRESS詳細步驟

分離部署LNMP搭建WORDPRESSphp

  • LNMP是一個基於CentOS/Debian編寫的Nginx、PHP、MySQL、PHPMyAdmin。LNMP表明的就是:Linux系統下Nginx+MySQL+PHP這種網站服務器架構。
  • Nginx較爲穩定、功能豐富、安裝配置簡單、低系統資源,Nginx既能夠在內部直接支持PHP,也能夠支持做爲HTTP代理服務器對外進行服務。
  • Nginx用C編寫,不管是系統資源開銷仍是CPU使用效率都比Perlbal好得多。
  • wordpress是一款開源免費的產品,利用php和mysql來開發的博客程序(也有不少人改成網站)。wordpress的功能很是強大,有衆多的插件。沒錯,WordPress是世界上最好的博客程序,可是若是你單純的認爲WordPress只是一 款博客程序的話,那就大錯特錯。經過WordPress插件和主題,咱們能夠將這款博客程序擴展成咱們須要的、功能不凡的另類用途,例如CMS、連接目錄、論壇、WIKI、電子商務、項目管理、微博、SNS、視頻、圖片網站等等。可是它的安裝倒是很簡單,安裝的辦法能夠從官網上獲取,程序也能夠從官網上下載。貼上wordpress的官網地址:https://cn.wordpress.org/
  • 不少人在搭建的時候都是使用的一臺機器來部署LNMP環境,可是咱們在實際的工做中通常都是分離部署的。也就是說MySQL是MySQL;它是一臺單機,分離部署本身跑本身的服務,提升效率。node

    分離部署LNMP搭建WORDPRESS詳細步驟
    OS:centos 7
    Nginx IP:192.168.92.132
    PHP IP:192.168.92.128
    MySQL IP:192.168.92.130
    一 首先安裝nginxmysql

yum安裝軟件和源碼包安裝異同
yum安裝的優缺點linux

優勢:安裝東西,方便快捷,特別是不用考慮包依賴
缺點:安裝過程,人爲沒法干預,不能按需,安裝。源裏面有什麼就安裝什麼,安裝的版本也比較低。

源碼包安裝的優缺點nginx

優勢:編譯安裝過程,能夠設定參數,按照需求,進行安裝,而且安裝的版本,能夠本身選擇,靈活性比較大
缺點:因爲安裝包過新或者是其餘問題,致使依賴的包沒有,或者版本太低。這個時候就要解決包的依賴問題,linux系統中有的包,一個依賴一個,可能裝一個小東西,就要解決一堆包的依賴問題,花不少時間解決包的依賴問題,得不嘗失。

NGINX的優勢:c++

  1. Nginx是俄羅斯人編寫的十分輕量級的HTTP服務器,Nginx,它的發音爲「engine X」,是一個高性能的HTTP和反向代理服務器,同時也是一個IMAP/POP3/SMTP 代理服務器.Nginx是由俄羅斯人 Igor Sysoev爲俄羅斯訪問量第二的 Rambler.ru站點開發.
  2. Nginx以事件驅動(epoll)的方式編寫,因此有很是好的性能,同時也是一個很是高效的反向代理、負載平衡。可是Nginx並不支持cgi方式運行,緣由是能夠減小所以帶來的一些程序上的漏洞。因此必須使用FastCGI方式來執行PHP程序。
  3. 因爲Nginx自己的一些優勢,輕量,開源,易用,愈來愈多的公司使用nginx做爲本身公司的web應用服務器,本文詳細介紹nginx源碼安裝的同時並對nginx進行優化配置。
  4. Nginx 是一個高性能的 Web 和反向代理服務器, 它具備有不少很是優越的特性:web

  5. 做爲 Web 服務器:相比 Apache,Nginx 使用更少的資源,支持更多的併發鏈接,體現更高的效率,這點使 Nginx 尤爲受到虛擬主機提供商的歡迎。可以支持高達 50,000 個併發鏈接數的響應,感謝 Nginx 爲咱們選擇了 epoll and kqueue 做爲開發模型.sql

  6. 做爲負載均衡服務器:Nginx 既能夠在內部直接支持 Rails 和 PHP,也能夠支持做爲 HTTP代理服務器 對外進行服務。Nginx 用 C 編寫, 不管是系統資源開銷仍是 CPU 使用效率都比 Perlbal 要好的多。數據庫

  7. 做爲郵件代理服務器: Nginx 同時也是一個很是優秀的郵件代理服務器(最先開發這個產品的目的之一也是做爲郵件代理服務器),Last.fm 描述了成功而且美妙的使用經驗。vim

  8. Nginx 安裝很是的簡單,配置文件 很是簡潔(還可以支持perl語法),Bugs很是少的服務器: Nginx 啓動特別容易,而且幾乎能夠作到7*24不間斷運行,即便運行數個月也不須要從新啓動。你還可以在 不間斷服務的狀況下進行軟件版本的升級。

  9. nginx的英文官方網站是:http://www.nginx.org/ 在這裏咱們能夠直接查看Nginx的各個版本號。Nginx的軟件有三種版本:穩定版,開發板,和歷史穩定版。開發板更新的較快,包含最近的功能和BUG修復,但同時也可能會遇到新的BUG,開發板的更新一旦穩定下來就會被歸入穩定版中。穩定版更新的較慢,可是軟件的BUG會不多,能夠做爲企業的首選,所以一般建議使用穩定版。固然在實際工做中,選擇穩定版時,儘可能避免使用最新的版本,選擇比已出來的最近版晚6-10個月的版本比較好。在本章咱們選擇1.12.2穩定版本

    start:開始環境搭建,首先是安裝NGINX

    Nginx主機:
    1)檢查並安裝Nginx基礎依賴包pcre-devel openssl-devel
    名稱中帶有"devel"字符串的軟件包是必需要安裝的
    2)安裝pcre-devel以及openssl-devel
    yum install -y openssl-devel pcre-devel
    3)開始安裝Nginx 操做命令以下:
    mkdir -p /home/yankerp/tools
    cd /home/yankerp/tools/
    wget http://nginx.org/download/nginx-1.12.2.tar.gz
    useradd -M -s /sbin/nologin nginx
    tar zxf nginx-1.12.2.tar.gz
    cd nginx-1.12.2/

在咱們編譯安裝前咱們能夠隱藏Nginx軟件名稱以及版本號以下:
Pwd
vim src/core/nginx.h
修改HTTP頭信息中的connection字段,防止回顯具體版本號
vim src/http/ngx_http_header_filter_module.c
有時候咱們頁面程序出現錯誤,Nginx會代咱們返回相應的錯誤代碼,回顯的時候,會帶上nginx和版本號,咱們把他隱藏起來
vim src/http/ngx_http_special_response.c

以上修改完成後正式安裝以下:
./configure --prefix=/usr/local/nginx --with-http_dav_module --with-http_stub_status_module --with-http_addition_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-pcre --with-http_ssl_module --with-http_gzip_static_module --user=nginx --group=nginx

make && make install
--with-http_dav_module #增長PUT,DELETE,MKCOL:建立集合,COPY和MOVE方法
--with-http_stub_status_module #獲取Nginx的狀態統計信息
--with-http_addition_module #做爲一個輸出過濾器,支持不徹底緩衝,分部分相應請求
--with-http_sub_module #容許一些其餘文本替換Nginx相應中的一些文本
--with-http_flv_module #提供支持flv視頻文件支持
--with-http_mp4_module #提供支持mp4視頻文件支持,提供僞流媒體服務端支持
--with-http_ssl_module #啓用ngx_http_ssl_module

安裝完成後的優化:
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
啓動Nginx
netstat -anput | grep nginx
此時Nginx服務正式安裝完成,咱們開放80端口,在windows打開瀏覽器輸入http://192.168.xx.xx也就是nginx服務器的IP地址若是看到如下圖片,就表示Nginx已經啓動了。
開放80.
firewall-cmd --add-port=80/tcp
firewall-cmd --add-port=80/udp

瀏覽器訪問測試就行

分離部署LNMP搭建WORDPRESS詳細步驟

分離部署LNMP搭建WORDPRESS詳細步驟

安裝PHP

1) 安裝相關的依賴包
yum -y install gcc gcc-c++ libxml2-devel libcurl-devel openssl-devel bzip2-deve
2) 安裝libmcrypt
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz
tar zxf libmcrypt-2.5.7.tar.gz
d libmcrypt-2.5.7/
./configure --prefix=/usr/local/libmcrypt && make && make install
3) 正式安裝php
下載php安裝源碼包
wget http://cn2.php.net/distributions/php-5.6.27.tar.gz
解壓源碼包,並安裝(編譯過程稍微有點長)
tar zxf php-5.6.27.tar.gz
tar zxf php-5.6.27.tar.gz

./configure --prefix=/usr/local/php5.6 --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --enable-fpm --enable-sockets --enable-sysvshm --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --with-mhash --with-mcrypt=/usr/local/libmcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts && make && make install
編譯安裝完後咱們建立Nginx用戶,要求UID和GID和Nginx機器上的一致!
groupadd -g 1001 nginx
useradd -u 900 nginx -g nginx -s /sbin/nologin
tail -1 /etc/passwd
提供PHP的配置文件及提供腳本
[root@php php-5.6.27]# cp php.ini-production /etc/php.ini
[root@php php-5.6.27]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@php php-5.6.27]# chmod +x /etc/init.d/php-fpm
[root@php php-5.6.27]# chkconfig --add php-fpm
[root@php php-5.6.27]# chkconfig php-fpm on
修改php主配置,並編輯以下:
[root@php php-5.6.27]# cp /usr/local/php5.6/etc/php-fpm.conf.default /usr/local/php5.6/etc/php-fpm.conf
[root@php php-5.6.27]# vim /usr/local/php5.6/etc/php-fpm.conf
修改內容以下:
pid = run/php-fpm.pid
user = nginx
group = nginx
listen = 192.168.92.128:9000 //PHP主機的IP地址
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35

修改完成後啓動php服務
Service php-fpm start
Netstat -anput | grep php

到這裏咱們的php完成!
PHP測試頁面成功以後就說明nginx支持轉發PHP的資源請求了,接下來部署wordpress我的站點:

分離部署LNMP搭建WORDPRESS詳細步驟

安裝MySQL:

在centos7中默認自帶了mariadb須要卸載
• rpm -qa | grep mariadb
• mariadb-libs-5.5.44-2.el7.centos.x86_64
rpm -e mariadb-libs-5.5.44-2.el7.centos.x86_64 --nodeps

1) 下載MySQL二進制安裝包
wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.g

2) 解壓MySQL二進制包把解壓的文件拷貝到/usr/local/mysql下,而後進入mysql目錄查看
3) tar zxf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
4) mv mysql-5.7.18-linux-glibc2.5-x86_64 /usr/local/mysql
5) cd /usr/local/mysql/

3)優化執行路徑
echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/prof
source /etc/profile

4)建立data以及log目錄以下:
cd /usr/local/mysql/
mkdir data
mkdir log

6) 建立mysql用戶和組
groupadd mysql && useradd -r -g mysql -s /bin/false mysql

7) 創建MySQL主配置文件
vim /etc/my.cnf
[root@mysql mysql]# cat /etc/my.cnf
[client]
socket=/usr/local/mysql/mysql.sock
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
pid-file=/usr/local/mysql/data/mysqld.pid
socket=/usr/local/mysql/mysql.sock
log_error=/usr/local/mysql/log/mysql.err
8) 設置相應的權限並初始化MySQL
[root@mysql mysql]# chmod 750 data/ && chown -R mysql . && chgrp -R mysql . && bin/mysqld --initialize --user=mysql
8)複製啓動腳本並啓動MySQL數據庫
[root@mysql mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld && service mysqld start
到這裏MySQL正式安裝完畢

分離部署LNMP搭建WORDPRESS詳細步驟

在部署前咱們在數據庫服務器上建立wordpress數據庫及受權賬戶
mysql> create database wordpress;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on wordpress.* to yankerp@'%' identified by '123456';
Query OK, 0 rows affected, 1 warning (0.00 sec)

wordpress搭建

在nginx主機上解壓wordpress壓縮包
[root@nginx ~]# tar zxf wordpress-4.9.1-zh_CN.tar.gz
[root@nginx ~]# mv wordpress/ /www/
在php主機上一樣的操做
[root@php ~]# tar zxf wordpress-4.9.1-zh_CN.tar.gz
[root@php ~]# mv wordpress/
/www
訪問測試:http://192.168.92.132/

分離部署LNMP搭建WORDPRESS詳細步驟

這是在8上出的問題,未解決,,,,,,,,,,
再開一個機子上了5.7,沒毛病了,,,,,,
連上數據庫了

分離部署LNMP搭建WORDPRESS詳細步驟

分離部署LNMP搭建WORDPRESS詳細步驟

分離部署LNMP搭建WORDPRESS詳細步驟

分離部署LNMP搭建WORDPRESS詳細步驟

在數據庫主機上能夠看用戶

分離部署LNMP搭建WORDPRESS詳細步驟

Wordpress拓展:

CMS
CMS是Content Management System的縮寫,意爲」內容管理系統「, 可讓你不須要學習複雜的建站技術,不須要學習太多複雜的HTML語言,你就可以利用CMS構建出一個風格統一功能強大的專業網站。
在這 推薦一款插件Filosofo Home-Page Control,以及兩篇文章:
《5個簡單的步驟把 WordPress 打形成 CMS》
《11 款CMS風格的Wordpress主題模板收集》
連接目錄
連接目錄一個經過分類和子 分類進行分類排序的網頁連接集。
免費的目錄腳本是很是好的,可是他們運行於 WordPress 以外,因此並非咱們想要得。

WP Link Directory
WP Link Directory是一個WordPress的連接目錄插件,讓你保持一個連接目錄,並容許其餘網站管理員申請連接到您的網站。它能夠檢查連接狀況,甚至 檢查其餘網站的Pagerank並接受或拒絕您指定的標準爲基礎的環節。
其主要特色是:
• 自動檢查由指定的Pagerank網頁連接。
•在目錄中顯示全部站點的PageRank。
•顯示每一個連接的詳細信息。
•提供多種語言。
•當有新的網址提交時,會自動通知管理員。
•能夠和你當前使用的主題無縫的結合

論 壇
論壇做爲一個社區網站是必備的一個功能模塊,可是當咱們使用discuz、phpwind、phpbb等這些優秀的 論壇程序時,不得不佩服他的功能強大,可是咱們有沒有自問過:」本身的網站須要這麼複雜的程序嗎?」,因而許多優秀的、注重效率、知足基本功能的論壇程序 受到小站長的追捧。
WordPress團隊開發了一個簡單的論壇程序bbpress(有 點像百度貼吧)可是咱們有時就是須要再簡單點的論壇,這時咱們可使用WordPress插件論壇來擴展:Simplepress(《WordPress 論壇插件:Simple Forum》)
WP-Forum(《wordpress 插件之WP-Forum:打造一個輕量級的wordpress論壇》)

WIKI
Wiki 系統屬於一種人類知識網格系統,咱們能夠在Web的基礎上對Wiki文本進行瀏覽、創wiki建、更改,並且建立、更改、發佈的代價遠比HTML文本小; 同時Wiki系統還支持面向社羣的協做式寫做,爲協做式寫做提供必要幫助;最後,Wiki的寫做者天然構成了一個社羣,Wiki系統爲這個社羣提供簡單的 交流工具。與其它超文本系統相比,Wiki有使用方便及開放的特色,因此Wiki系統能夠幫助咱們在一個社羣內共享某領域的知識。
插件推 薦:WP-WIKI
安裝WP-WIKI插件後,添加了發佈 WordPress的頁面或文章的」wiki維基編輯」 功能,當你編輯文章或者頁面的屏幕的主編輯框下面會添加一個新的Wordpress Wiki複選框,你選中它後,那麼就意味着任何人能夠登錄到你的網站以一個WikiEditor維基編輯人的身份編輯這些特定的頁面(測試時好像須要用戶 名和密碼),若是你點擊一箇舊的修訂連接,他只是展現讓你詳閱全部舊的修訂連接。

電子商務
用 WordPress作個電子商務網站,工做之餘在網上賣點小東西,呵呵,是否是很不錯的想法,若是你有這樣的想法,那麼,你就去作吧,爲你介紹一款強大的 插件WP e-Commerce。
WP e-Commerce是一款電子商務購物車插件程序,它不只操做方便而且功能強大,能夠獨立頁面顯示也能夠嵌入到側邊欄中,很是適合在線銷售你的服務和產 品。此外它還內置多種包括Paypal等在內的支付網關,讓收款和資金週轉更加快捷有效!
支付網關:讓你輕鬆接受在線支付
簡 化結算:讓客戶有更好的購物體驗
社會化網絡:更輕鬆的推薦你的產品
緊湊的WordPress整合:安裝方便
更 多的點擊和更好的銷售:讓更多的人瞭解你的新產品

項目管理
在WordPress上輕 鬆的建立並展現你的項目,跟蹤項目和任務的進度。
推薦插件:WP-Project、WP-Advanced-Trac

微博
如今微博很火,就像當年的博客進入中國同樣。可是中國微博異於twitter, 在中國微博:娛樂、資訊,而twitter上是:資訊、娛樂。
在這微博混戰的年代、在這追求新鮮與個性的時代,我註冊了幾乎全部能註冊的 微博,可是真正使用的也就是幾個。
在這推薦一個很是強大的WordPress主題:P2主題,這是一款專門的微博主題。
《P2 主題打造真正的多用戶微博》

SNS
又是一個當下很是火的網絡服務,可是微博來臨的時 候,SNS卻黯然失色啦,只能說互聯網的興奮點只能是新生事物
推薦插件:BuddyPress,與WordPress師出同門,質量仍是能夠保證的。 BuddyPress主要包含了我的信息、博客、朋友圈、小組、微博客、狀態更新和相冊等功能
視頻網站
WordPress經過在2.9版本中加強了視頻嵌入功能,尤爲是對國外網站視頻的插入更是智能化。
若是咱們想經過 WordPress創建一個視頻網站的話,我想沒有比採用 VodPod主題更好了。 《WordPress視頻主題VodPod使用教程》

圖片網站 若是是單純的添加一個 相冊的話,我想採用NextGEN Gallery插件最好不過啦《21款 Wordpress圖片相冊插件/ Gallery Plugins》。 可是若是是創建一個圖片網站的話,那麼選擇一款好的圖片 主題更爲重要:《推薦8款wordpress圖片模板》。 另外再推薦兩款插件:Yet another photoblog 和 PhotoQ Wordpress Photoblog Plugin

相關文章
相關標籤/搜索