CentOS 7 安裝 phpMyAdmin 4.7
Linux上最老牌的MySQL管理軟體,就像是Microsoft SQL Server的SQL Server Managerment Studio(SSMS)!
有安裝MySQL的話,幾乎都會使用 phpMyAdmin來管理MySQL,本文章列出在CentOS 7 安裝 phpMyAdmin 4.7 的過程。
延伸閱讀:phpMyAdmin 基本設定 提升安全的第一步、phpMyAdmin 進階設定 讓phpMyAdmin更安全
檢查php, MySQL版本,這很重要,會牽涉到phpMyAdmin是否能支援!
1 2 3 4 |
[andy@www ~]$ php -v PHP 7.0.17 (cli) (built: Mar 19 2017 14:34:58) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies |
1 2 |
[andy@www ~]$ mysql --version mysql Ver 14.14 Distrib 5.7.18, for Linux (x86_64) using EditLine wrapper |
來官方網站查,按照我的環境,應該要找哪個版本的phpMyAdmin
phpMyAdmin – Download
這邊可以看到phpMyAdmin 4.7.0支援 php5.5~7.1 & MySQL 5.5或更新的版本!
由於我所安裝的repository並沒有phpMyAdmin 4.7的版本!所以必須要自己下載安裝!
複製下載連結,貼進指令中下載!
1 |
[andy@www ~]$ sudo wget https://files.phpmyadmin.net/phpMyAdmin/4.7.0/phpMyAdmin-4.7.0-all-languages.tar.gz |
解壓縮
1 |
[andy@www ~]$ sudo tar -xvf phpMyAdmin-4.7.0-all-languages.tar.gz |
將phpMyAdmin的根目錄更名,並且移動到你想放置的目錄下
(本範例欲將根目錄更名為phpmyadmin,並且放置到/usr/share/之下)
1 |
[andy@www ~]$ sudo mv phpMyAdmin-4.7.0-all-languages /usr/share/phpmyadmin |
修改config檔
如果你是像本文一樣手動安裝phpMyAdmin,就直接來修改http.conf
1 |
[andy@www ~]$ sudo vim /etc/httpd/conf/httpd.conf |
如果你是直接用yum install phpmyadmin安裝phpMyAdmin,就直接去改phpMyAdmin的設定檔!
1 |
[andy@www ~]$ sudo vim /etc/httpd/conf.d/phpMyAdmin.conf |
所以你就可以直接以別名 http://domain/phpmyadmin/ 來存取這個目錄的網頁內容!
記得Alias /phpmyadmin 這裡的結尾『不用』加上斜線!
用phpmyadmin作為phpMyAdmin的別名,是很危險的!建議取一個別的名字!
1 2 3 4 5 6 7 |
Alias /phpmyadmin '/usr/share/phpmyadmin' <directory '/usr/share/phpmyadmin'> Options FollowSymLinks AllowOverride All Order Allow,Deny Allow from all </Directory> |
wq存檔離開
1 |
:wq |
重啟httpd
1 |
[andy@www ~]$ sudo systemctl restart httpd |
把 phpMyAdmin 的目錄權限交給 Apache
1 |
$ sudo chown -R apache:apache /usr/share/phpmyadmin/ |
確認SELinus為開啟或關閉,如果伺服器的SELinux是正在運行中!就需要再加上一個指令:
1 |
$ sudo chcon -R --type=httpd_sys_rw_content_t /usr/share/phpmyadmin/ |
測試phpmyadmin是否能正常運行!
輸入http://domain/phpmyadmin/
輸入http://domain/phpmyadmin/
出現Forbidden
You don’t have permission to access /phpmyadmin on this server.
我覺得這個問題,可以從下列兩個方向來看:
1) 如果你是使用CentOS7,查看SELinux的設定是否允許這個資料夾讓httpd存取!
若要測試SELinux的話,可以試著先把SELinux關閉,再來看看是否能測通。
2) 看看防火牆設定httpd是否有被允許通訊。
版主你好,我照你的步驟做到這一步
輸入http://domain/phpmyadmin/
把資料放在usr/share 下面就無法進入
但是改放在www/html 裡面就可以登入
SELinux 檢查是關閉的,我也有照你的方式添加alias,不知道哪邊還需要做修正呢
我是使用centos7
可能還會是權限不足造成的現象。
你可以用 『ls -alZ /usr/share/phpmyadmin』查看資料夾的權限設定狀態為何。
(1)通常來說你至少要將這些資料夾的 group 設定給 apache,或者這樣行不通的話就連資料夾及其檔案的 owner 都給apache。
owner、group都給apache:『sudo chown -R apache:apache /usr/share/phpmyadmin』
owner設為server的power user、group給apache『sudo chown -R PowerUser名稱:apache /usr/share/phpmyadmin』
(2)上述(1)是假設你的SELinux是停用的狀態,假設SELinux運作中,就要除了上述(1)的設定之外,還要進行chcon的設定。 p.s.以下指令的選項type前面都有兩個減號『-』。
『sudo chcon -R –type=httpd_sys_rw_content_t /usr/share/phpmyadmin』
Pingback:CentOS 8 安裝與設定 MySQL 8, phpMyAdmin 4.9 - BrilliantCode.net