Linux中國

Linux有問必答:如何在CentOS上安裝phpMyAdmin

前提

在CentOS上安裝phpMyAdmin,你第一步需要架設一台Web伺服器(如Apache或nginx),安裝好MySQL/MariaDB資料庫和PHP。根據你的偏好和需求,你可以從LAMPLEMP中選擇一種安裝。

另一個要求是允許在你的CentOS上安裝EPEL庫。如果你還沒設置過請猛戳這裡

在CentOS6或7上安裝phpMyAdmin

一旦你設置了EPEL庫,你就能輕鬆地用以下命令安裝phpMyAdmin了。

在CentOS 7上:

$ sudo yum install phpmyadmin 

在CentOS 7上:

$ sudo yum install phpmyadmin php-mcrypt 

在CentOS 7上配置phpMyAdmin

默認情況下,CentOS 7上的phpMyAdmin只允許從迴環地址(127.0.0.1)訪問。為了能遠程連接,你需要改動它的配置。

用文本編輯器打開phpMyAdmin的配置文件(路徑:/etc/httpd/conf.d/phpMyAdmin.conf),找出並注釋掉帶有"Require ip XXXX"字樣的代碼行。會有四處這樣的代碼行,用"Require all granted"取而代之。重新改動過的配置文件如下所示。

$ sudo vi /etc/httpd/conf.d/phpMyAdmin.conf 
. . . . .
<Directory /usr/share/phpMyAdmin/>
   AddDefaultCharset UTF-8

   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       #Require ip 127.0.0.1
       #Require ip ::1
       Require all granted
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>

<Directory /usr/share/phpMyAdmin/setup/>
   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       #Require ip 127.0.0.1
       #Require ip ::1
       Require all granted
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>
. . . . .

最後,重啟httpd使改動生效。

$ sudo systemctl restart httpd 

在CentOS 6上配置phpMyAdmin

默認情況下,CentOS 6上的phpMyAdmin是禁止從每個IP地址訪問的。為了能遠程連接,你需要改動它的配置。

用文本編輯器打開phpMyAdmin的配置文件(路徑:/etc/httpd/conf.d/phpMyAdmin.conf),找出並注釋掉"Deny from all"字樣的代碼行。然後把"Allow from 127.0.0.1"字樣的代碼行改成"Allow from 0.0.0.0"。重新改動過的配置文件如下所示。

$ sudo vi /etc/httpd/conf.d/phpmyadmin.conf 
<Directory "/usr/share/phpmyadmin">
  Order Deny,Allow
#  Deny from all
  Allow from 0.0.0.0
</Directory>

下一步是將phpMyAdmin的配置文件用blowfish加密工具加密。這一步需要加密cookie里的密碼來作為基於cookie的部分認證。

用文本編輯器打開如下路徑所示的文件並且用blowfish設置一個隨機密碼,如下所示。

$ sudo vi /usr/share/phpmyadmin/config.inc.php 
$cfg[&apos;blowfish_secret&apos;] = &apos;kd5G}d33aXDc50!&apos;; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

最後,重啟httpd使改動生效。

$ sudo service httpd restart 

測試phpMyAdmin

測試phpMyAdmin是否設置成功,訪問這個頁面:http:///phpmyadmin

你應該能通過Web界面來記錄下任何MySQL用戶(比如root)和管理MySQL/MariaDB的資料庫/表。

疑難解答

這裡有一些在CentOS上安裝phpMyAdmin的過程中遇到的一些問題解決方法。

  1. 當你在瀏覽器里嘗試連接phpMyAdmin頁面的時候,你看到"403 Forbidding"錯誤:

You don't have permission to access /phpMyAdmin on this server.

發生這種錯誤是因為phpMyAdmin默認阻止了IP地址遠程連接。要修復這種錯誤,你需要編輯它的配置文件來允許遠程連接。具體操作見上。

  1. 當你連接phpMyAdmin頁面時,你看見"The configuration file now needs a secret passphrase (blowfish_secret)."信息,並且你無法登錄。

要修復這種錯誤,你需要編輯 /usr/share/phpmyadmin/config.inc.php 這個文件來添加一個隨機的blowfish密碼,然後重啟httpd,如下所示。

$cfg[&apos;blowfish_secret&apos;] = &apos;kd5G}d33aXDc50!&apos;; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
$ sudo service httpd restart (CentOS 6)
$ sudo systemctl restart httpd (CentOS 7) 
  1. 當你連接phpMyAdmin頁面時,你看見"Cannot load mcrypt extension. Please check your PHP configuration"錯誤信息。

要修復這種錯誤,要安裝下面這個包:

$ sudo yum install php-mcrypt 

然後重啟httpd:

$ sudo service httpd restart (CentOS 6)
$ sudo systemctl restart httpd (CentOS 7) 

via: http://ask.xmodulo.com/install-phpmyadmin-centos.html

譯者:ZTinoZ 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國