LAMP及部署wordpress/phpMyadmin

LAMP詳解 wordpress安裝


一、引言

lamp含義:黃金組合。簡要介紹一下下面這四個東西吧。linux,不用說了有很多發行版本,主流的三大版本是Debian系列,RedHat系列,slackware系列。apache,全稱叫Apache HTTP Server,是世界使用排名第一的web服務器軟件,httpd是超文本傳輸協議http服務器的主程序??赏ㄟ^簡單的API擴展,將PHP/Perl/Python等解釋器編譯到服務器中。PHP是全球最好的腳本語言,主要用于web開發,python是高級編程語言,功能也很強大。mysql和mariadb是數據庫,mysql被oracle收購,oracle做的很好,但是收費,mysql是oracle的眼中釘,肉中刺,oracle喜歡通過收購競爭對手來解決競爭,然后把別人的技術放置不用。為此mysql的作者擔心這種情況的發生,有開發了mariadb。

l:linux
a:apache(httpd)
m:mysql<--->mariadb
p:php,perl,python

二、請求流程

1、一次http事務

前面提到了,客戶端的一個請求+服務端的一個響應就構成了一次http事務。那么具體的過程如何:

客戶端通過瀏覽器發出http請求,請求當中包含一部分內容,內容不是最關鍵的,關鍵的是在內容前面附加一個http請求首部,用來告訴服務器端,客戶端是如何請求的,用哪種方法進行請求的,請求哪一個虛擬機等等。

請求發送到服務器端后,服務器端要分析請求,分析這個請求首部用什么url,用什么方法請求,請求哪個主機,用哪個協議等等。然后構建響應報文,響應時還要告訴客戶端我是怎么響應你的,給出響應狀態碼(100-500)??蛻舳死眠@些首部信息完成內容之外的交換信息。則這一次http事務完成。

    報文語法格式:
        request 報文
            <method> <request-URL> <version>
            <headers>

            <entity-body>
        response 報文
            <version> <status> <reason-phrase>
            <headers>

            <entity-body>

2、請求流程

靜態資源請求

用戶請求先到達內核空間的網絡協議棧,內核空間通過web服務所監聽的套接字socket,可以將用戶請求轉發給用戶空間的http服務進程。靜態資源是http服務進程向內核發請求,去磁盤找到這個資源,沒有就顯示Not Found,有就把加載的資源返回給進程,先到內核自己的內存中。其中進程把任務交給內核后到內核把資源返回進程之間,進程處于空閑狀態,我們把這個狀態稱為阻塞狀態。拿到資源后,進程構建響應報文,把資源的前面加上響應首部,發到內核空間,通過通信子網進行向外發送。即達成了一次http事務吧。

靜態資源:Client -- http 協議--> httpd

補充:
如果不阻塞,則注冊一個事務,就去做別的事情,等這邊的事情好了,提醒一下就好了,這種機制叫做AIO機制。


上面的,內核加載完了資源放到了內存中,然后又返給進程,這個時候又浪費了一次用戶空間,所以有一種Sendfile機制,可以直接在內核里面添加響應首部,然后傳給用戶。這樣就省去了一回用戶空間,提高了效率。

動態資源請求。

從磁盤加載后,進程將資源傳給PHP,PHP根據是否用到數據庫去調用數據庫,都處理好了,傳遞給進程。

客戶端通過http協議將請求傳給內核,那么httpd進程通過三種方法與php結合:
    modules: 把 php 編譯成為 httpd 的模塊
    cgi:
    fastcgi:
php要聯系mysql。要用PHP代碼扮演客戶端,經過mysql協議聯系。


Client -- http --> httpd --> libphp5.so () -- mysql --> MySQL server

LAMP及部署wordpress/phpMyadmin

三、Centos7上搭建lamp

1、系統環境

centos7

ip=192.168.1.109

防火墻關閉

selinux關閉


2、安裝LAMP組件

yum install -y httpd php-fpm php-mysql mariadb-server

3、設置mysql,啟動并設置開機自啟動

systemctl start mariadb.service

systemctl enable mariadb.service

4、測試

mysql

GRANT ALL PRIVILEGES ON testdb.* TO gwx@'192.168.%.%' IDENTIFIED BY '1';

LAMP及部署wordpress/phpMyadmin

5、重啟mysqld服務:systemctl restart mysqld

LAMP及部署wordpress/phpMyadmin

話說啟動失敗是咋回事,用通用二進制或者源碼安裝的是這樣啟動mysqld。yum安裝的啟動方式如下:

LAMP及部署wordpress/phpMyadmin

LAMP及部署wordpress/phpMyadmin

6、http開啟以及虛擬主機配置前面已經討論過了 故在此省略

四、部署WorPress

1、下載wordpress

wget -O /www/b.net/htdocs/wordpress.zip https://cn.wordpress.org/wordpress-4.4.2-zh_CN.zip

2、配置wordpress

unzip wordpress.zip

cd wordpress

cp wp-config-sample.php wp-config.php #復制其配置模板然后配置

CREATE DATABASE wpdb;

GRANT ALL ON wpdb.* TO 'wpuser'@'%' IDENTIFIED BY 'passwd'; #賦予wpuser用戶對wpdb數據庫的所有權限, 并設置密碼為passwd

vim wp-config.php #按自己需求配置

service httpd restart

3、測試

http://www.b.net/wordpress

LAMP及部署wordpress/phpMyadmin

如上說明數據庫沒設置好,注意如下幾個方面

GRANT ALL ON wpdb.* TO 'wpuser'@'%' IDENTIFIED BY 'passwd';    與你的配置文件要吻合,配置文件的local,要改為你遠程連接的地址,數據庫要創建。

如下圖

LAMP及部署wordpress/phpMyadmin

再測試,結果如下

LAMP及部署wordpress/phpMyadmin

就表示ok了?。?!

LAMP及部署wordpress/phpMyadmin

然后你就可以寫博客啦啦啦啦?。。。。?/p>

四、乘熱打鐵,我們在來搭建一個phpMyAdmin平臺管理數據庫

1、下載

wget -O  /www/c.org/htdocs/phpadmin.zip   https://files.phpmyadmin.net/phpMyAdmin/4.6.5.2/phpMyAdmin-4.6.5.2-all-languages.zip

unzip    phpadmin.zip  

ln -sv phpMyAdmin-4.6.5.2-all-languages/    pma

cd pma

cp config.sample.inc.php config.inc.php

openssl rand -base64 15   #生成一個隨機數

LAMP及部署wordpress/phpMyadmin

測試結果如下:

LAMP及部署wordpress/phpMyadmin

這結果說明我的php版本太低要一個高點的,那么現在我去wget一個較低版本的phpmyadmin試一試。

wget https://files.phpmyadmin.net/phpMyAdmin/4.0.10.15/phpMyAdmin-4.0.10.15-english.zip

LAMP及部署wordpress/phpMyadmin

說明什么,還要安裝一個包,裝上這個包試試:yum install php-mbstring,之后重啟。

LAMP及部署wordpress/phpMyadmin

好了,可以用了。

原創文章,作者:N24_yezi,如若轉載,請注明出處:http://www.www58058.com/63490

(0)
N24_yeziN24_yezi
上一篇 2016-12-12
下一篇 2016-12-13

相關推薦

  • linux上RAID的工作方式

    -. RAID是什么?     磁盤陣列(Redundant Arrays of Independent Disks,RAID),是將多塊廉價硬盤組合在一起當作一個更大的硬盤使用,利用可以同時對每個硬盤同時進行讀寫的特性提高計算機對硬盤的讀寫能力。我們甚至可以空出RAID中的一塊或多塊硬盤對整個RAID進行數據校驗,提…

    Linux干貨 2015-12-06
  • 配置使用基于mysql存儲rsyslog日志信息

    配置使用基于mysql存儲rsyslog日志信息   日志對于我們來說,肯定不會陌生。每個系統應用,只要有人訪問,每時每刻都會產生大量的日志,用來記錄服務器應用的運行信息。以便于我們在服務有異常時進行查看,或是從日志記錄中提取出應用系統的運行信息。某些電商Web網站甚至會利用日志記錄去對用戶的購買行為作分析,以便更好的服務于客戶。 &nb…

    Linux干貨 2016-09-05
  • 用戶權限以及組權限作業

    1、在/data/testdir里創建的新文件自動屬于g1組,組g2的成員如:alice能對這些新文件有讀寫權限,組g3的成員如:tom只能對新文件有讀權限,其它用戶(不屬于g1,g2,g3)不能訪問這個文件夾。 [root@localhost testdir]# mkdir -p /data/testdir [roo…

    Linux干貨 2016-08-08
  • 第三周作業

    第三周  文本處理工具:             linux上文本處理三劍客:                      grep、egrep、fgrep:文本過濾工具(模式pat…

    Linux干貨 2016-12-18
  • 淺談DNS基本原理以及實現方法(一)

     DNS(Domain Name System,域名系統),是目前互聯網上最不可或缺的服務器之一,我們在互聯網從訪問一個網站,到發送一封電子郵件,再到定位域中的域控制器,無時無刻不再使用著DNS為我們提供的服務,那為什么我們會需要這樣一個服務那?帶著這樣一個疑問讓我們先來認識一下什么是DNS吧  DNS最核心的工作就是域名解析,也就是把計…

    Linux干貨 2015-12-15
  • CMDB內功心法,助我登上運維之巔

    很多70、80后甚至90后都在金庸、古龍、梁羽生先生等武林大家熏陶下成長的,這么多年過去了,我的武俠夢依然不曾散去。曾幾何,夢想有一天練就一身絕學,摟著小師妹花前月下,仗劍走天涯,快意人生??擅看蔚暮ㄋ缐舳急话嘀魅未髸遄咏o抽醒,在他們的鞭策之下,渾渾噩噩的成了一位IT騷年。我們都知道武功分為內功和招式,內功是氣,而招式是形,以氣御形。內功深厚,會讓你的招…

    系統運維 2017-01-09

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-12-23 12:21

    贊~安裝過程已經描述的很詳細~~繼續加油~

欧美性久久久久