centos7 - nginx配置安裝phpmyadmin

 

原文  https://www.linuxidc.com/Linux/2017-10/147556.htmjavascript

使用Nginx搭建phpMyAdmin

 


Nginx有什麼用?

Nginx可讀做EngineX是由俄羅斯程序員Igor Sysoev開發的高性能的web服務器。
它採用了與Apache徹底不一樣的模型,可以處理接收更多的請求。
因爲Nginx優秀的性能,Nginx幾乎能夠和Apache並駕齊驅。
對Apache來講,Nginx可謂是後起之秀。
能夠說Apache表明了經典,Nginx則表明了新銳。
那Nginx具體有什麼功能呢?php

基本功能:
  • 靜態資源的web服務器,能緩存打開的文件描述符。
  • http, smtp, pop3協議的反向代理服務器,緩存、負載均衡。
  • 支持FastCGI
  • 模塊化,過濾器zip,SSI及圖像大小調整
  • 支持SSL。

須要注意的是:
a.若是單純只安裝一個Nginx的軟件包,服務器只會響應靜態請求。
因此Nginx在配合php-fpm的時候就能夠解析php網頁的動態請求。
Apache的時候,php通常做爲一個插件安裝使用。
而php-fpm則是一個獨立的進程,通常監聽在9000端口。
b.Nginx不只做爲web服務器具備高性能,並且做爲反向代理服務器也是十分優秀的。
c.與Apache的動態加載模塊不一樣,nginx雖然支持第三方模塊,可是也須要編譯。html

擴展功能:
  • 基於名稱和IP的虛擬主機
  • 支持長鏈接
  • 支持平滑升級
  • 定製訪問日誌 ,支持使用日誌緩衝區提升日誌存儲性能
  • 支持url重寫
  • 支持路徑別名
  • 支持基於IP及用戶的訪問控制
  • 支持速率限制,支持併發數限制
    雖然看上去她好像跟Apache服務器沒什麼區別,下面咱們將從幾個方面與Apache進行對比。

Nginx與Apache的不一樣之處

明明已經有Apache了,Nginx有什麼特別的好處嗎?
  • Nginx和Apache的最大不一樣之處,在於其網絡IO模型。
    上一次咱們在講解LAMP的時候有說過,Apache最大支持1024最大請求。
    這個是由Apache的網絡IO模型Select()決定的。
    Nginx使用異步IO模型Epoll(),則沒有Apache最大併發1024個請求這種限制。
    其實Select()最大併發1024也很多了,想一想一天有86400秒,假如一秒併發1024個。
    不過這要創建在硬件性能知足最大請求的硬件基礎上。由於不合穿的鞋怎麼會讓一個跑步運動員跑得快呢?
  • 配置文件相比較於Apache,更加簡單易懂。
    而Apache在這方面,如反向代理的配置都相對麻煩。
    而且Nginx有很詳盡的官方文檔
    例如Apache將動態請求經過fastcgi轉發給php-fpm,或者ajp協議轉發給tomcat,在配置上都沒有Nginx直觀。java

  • 做爲反向代理服務器的時候,有健康狀態檢測。
    可以監測後端的主機,若是有下線的話則不會到代理到下線的主機上。
    自帶健康狀態監測功能,若是是lvs則須要手動編寫腳原本監測後端主機的狀態。node

  • Nginx更加輕量
    響應請求的時候,Nginx佔用的內存更加的少。

雖然Nginx還有不少很吸引人的地方,可是我以爲這三點是我感覺最深的。
日後的文章裏,在講反向代理的時候咱們也會使用到Nginx。
若是之後時間比較充足的話,我還會配置一次Apache反向代理到tomcat。
到時候你們能夠自行比較一下二者在實現一樣功能上到底有什麼不一樣。mysql

使用Nginx搭建phpMyAdmin

phpMyAdmin是一個圖形化管理MySQL數據庫的一個工具。
他能夠配置在web服務器上,用於統計數據庫信息,備份數據庫,實現增刪改查等功能。
phpMyAdmin十分好用,並且直觀。linux

主機名 主機地址
node1 192.168.2.201  

本次使用的系統爲CentOS7.1,數據庫:MariaDB-5.5.50, web服務器:nginx-1.10.2,phpMyAdmin-4.6.5.2
注意:系統關閉了selinux,以及iptables。nginx

因爲此次咱們須要安裝phpMyAdmin的高版本,須要php5.5+的版本。
因此咱們須要先配置一個remi的yum源,而這個源在清華大學有鏡像。
Remi's RPM repository程序員

而phpMyAdmin咱們則能夠訪問他的官網
phpMyAdmin官方網站web

(1)配置remi鏡像

[root@bc ~]# wget https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-7.rpm [root@bc ~]# yum install remi-release-7.rpm

在官網中選擇合適的鏡像安裝,由於咱們這裏使用的是CentOS7,因此選擇的是7的包。

(2)安裝須要的組件

[root@bc ~]# yum install nginx mariadb mariadb-server php-mysql  php56-php-fpm php56-php-mbstring php56-php-mysqlnd

這裏須要注意的是,此次咱們選擇了php56-php-fpm,也就是php5.6版本的php-fpm。
系統默認提供的php-fpm是5.4版本的。

(3)下載phpMyAdmin,並解壓放置在Nginx的web根目錄下

[root@bc ~]# wget https://files.phpmyadmin.net/phpMyAdmin/4.6.5.2/phpMyAdmin-4.6.5.2-all-languages.tar.gz [root@bc ~]# tar xf phpMyAdmin-4.6.5.2-all-languages.tar.gz [root@bc ~]# cp -Ra /root/phpMyAdmin-4.6.5.2-all-languages /usr/share/nginx/html/pma/ [root@bc ~]# chown nginx.nginx -R /usr/share/nginx/html/pma

(4)啓動mariadb並初始化安全設置

[root@bc ~]# systemctl start mariadb.service
[root@bc ~]# mysql_secure_installation

這裏主要是設置密碼,以及清除一些測試庫等。
輸出結果挺長的就不截取了。
待會兒在phpMyAdmin的頁面上登錄的帳號密碼其實就是這裏設置的。

(5)修改nginx設置

[root@bc ~]# vim /etc/nginx/nginx.conf
    server {
        listen       80 default_server; server_name node1.bc.com; root /usr/share/nginx/html/pma; index index.php index.html; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } location ~ \.php$ { root html/pma/; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/pma/$fastcgi_script_name; include fastcgi_params; } }

(6)修改phpMyAdmin的配置

[root@bc ~]# cp /usr/share/nginx/html/pma/config.sample.inc.php /usr/share/nginx/html/pma/config.inc.php 
[root@bc ~]# vim !$
  $cfg['blowfish_secret'] = '0OYNHGWmgBWP/GtG3hLVwYlCeH0ZBs4hew'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

修改一行就能夠了,這個主要是加密的字串,能夠隨便打一段進去,可是不要把個人這行復制進去。
須要注意的是,這個字符串須要在單引號裏面,有一次眼神很差漏了一邊單引號,結果報錯了很久都沒有找出問題。

(7)重啓nginx以及啓動php-fpm

[root@bc ~]# systemctl restart nginx.service 
[root@bc ~]# systemctl start php56-php-fpm.service

若是啓動nginx不成功,可使用nginx -t來測試配置文件是否有語法錯誤。

(8)在瀏覽器上鍵入主機的ip地址就能夠訪問phpMyadmin。


phpMyAdmin.jpg


這裏輸入的是剛纔初始化數據庫的時候,本身設置的帳號密碼。
注意:安裝phpMyAdmin的時候,由於要安裝mbstring和mysqli組件。
假如沒有安裝,這裏就會報錯。
不過這些在remi的源中有提供,默認的源也有提供,不過要安裝對應版本。
這裏安裝的是php56-php-fpm,因此安裝mbstring的包名就是php56-php-mbstring
安裝組件以後,php-fpm須要重啓一下才能使組件生效。

(9)鍵入MySQL的帳號密碼就能夠正常使用了!


phpMyAdmin使用成功.jpg
相關文章
相關標籤/搜索