CentOS 7 上安装 LEMP (三):安装 phpMyAdmin 及安全设置

原文:How To Install and Secure phpMyAdmin with Nginx on a CentOS 7 Server

我们仍然使用 yum 安装 phpMyAdmin。

$ sudo yum install phpmyadmin

为了使 Nginx 找到 phpMyAdmin,需要创建一个从安装目录到 Nginx 文档根目录的符号链接。

$ sudo ln -s /usr/share/phpMyAdmin /usr/share/nginx/html

重起 php-fpm

$ sudo systemctl restart php-fpm

测试 phpMyAdmin 运行:

http://域名或IP地址/phpMyAdmin

[注意:]

  • 如果运行 phpMyAdmin 显示空白页,请设置缓存目录写权限:
    chmod -R 777 /var/lib/php/session
    

安全设置

  • 变更 phpMyAdmin 访问名称切换到根目录
    $ cd /usr/share/nginx/html

    变更名称

    $ sudo mv phpMyAdmin _db_

    现在你应该用新路径访问 phpMyAdmin 了:

    http://域名或IP地址/_db_
  • 设置 Web 服务认证
    设置前,我们需要创建一个保存用户名和密码的文件,Nginx 要求密码使用 crypt() 函数加密。

    创建密码

    $ openssl passwd

    创建新文件

    $ sudo vi /etc/nginx/pma_pass
    

    自定义用户名,连同密码一同粘贴到此文件内。

    demo:O5az.RSPzd.HE
    

    在之前配置的 Server 内追加以下内容:

    server {
        . . .
    
        location / {
            try_file $uri $uri/ =404;
        }
    
        location /_db_ {
            auth_basic "Admin Login";
            auth_basic_user_file /etc/nginx/pma_pass;
        }
    
        . . .
    }

    重起 Nginx

    $ sudo systemctl restart nginx

    再访问 phpMyAdmin 看看

    http://域名或IP地址/_db_

You may also like

Leave a Reply

Your email address will not be published. Required fields are marked *