Nginx设置alias别名目录访问phpmyadmin

时间:2021-11-06 19:46:50

引言:Nginx服务器通过设置alias别名可以使特定的目录(phpmyadmin目录)不出现在网站根目录下面,即使网站根目录被攻破,也不会影响到phpmyadmin目录里面的文件。

说明:

站点:http://192.168.0.62/,如下图

站点根目录:/usr/local/nginx/html/

Nginx运行账户:www

Nginx运行账户组:www

phpmyadmin目录:/home/phpmyadmin

MySQL用户名:root

密码:zaqQWE,./!@#$l;..)88&**%123

实现目的:通过http://192.168.0.62/phpmyadmin访问这个地址,实现对MySQL数据库的管理。

操作步骤

1、下载phpmyadmin

cd /home

wget https://files.phpmyadmin.net/phpMyAdmin/4.6.4/phpMyAdmin-4.6.4-all-languages.zip   #下载

unzip phpMyAdmin-4.6.4-all-languages.zip       #解压

mv phpMyAdmin-4.6.4-all-languages phpmyadmin  #更改文件夹名字为phpmyadmin

未修改nginx配置文件之前,访问http://192.168.0.62/phpmyadmin如下图,提示404错误,找不到文件

2、修改nginx配置文件

cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.confbak  #备份配置文件

vi /usr/local/nginx/conf/nginx.conf  #修改配置文件,在

server {
       
listen       80;
       
server_name  localhost;

#charset koi8-r;

#access_log  logs/host.access.log  main;

location / {
           
root   html;
           
index index.php  index.html index.htm;
        }

下面添加以下内容:

location /phpmyadmin {
        alias
/home/phpmyadmin;
        index
index.php;
    }

location ~ /phpmyadmin/.+\.php$ {
    if ($fastcgi_script_name ~
/phpmyadmin/(.+\.php.*)$) {
         set
$valid_fastcgi_script_name $1;
        }
    include fastcgi_params;
    fastcgi_pass  
127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param SCRIPT_FILENAME
/home/phpmyadmin/$valid_fastcgi_script_name;
    }

:wq!   #保存,退出

3、设置/home/phpmyadmin目录权限

chown www.www /home/phpmyadmin -R  #修改目录所有者为www账号

service nginx restart   #重启nginx

service php-fpm restart    #重启php-fpm

4、现在可以使用域名+phpmyadmin来访问了

http://192.168.0.62/phpmyadmin/,出现下面的界面

输入MySQL的账号密码,点执行,即可登录到phpmyadmin的管理界面,如下图

至此,Nginx设置alias别名目录访问phpmyadmin教程完成