1949啦网--小小 痛苦,是因为能力和欲望不匹配造成的

nginx配置phpmyadmin

phpmyadmin是常用的mysql web可视化管理软件,经常作为站点辅助程序一起发布。nginx是优秀的高性能web代理和反向代理软件,是web服务器的主流软件。

为了能在浏览器上访问站点的phpmyadmin管理界面,需要在nginx上配置访问规则。根据nginx的语法,相对还是比较简单的。根据phpmyadmin的文件类型分类解析即可。下面是一个常用配置:

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 /var/www/phpmyadmin/$valid_fastcgi_script_name; } location ~ /phpmyadmin/.+\.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {     root /var/www/;     expires 30d;     try_files $uri =404; } 

在这个配置中,我们把phpmyadmin配置到了/phpmyadmin这个二级目录下。这个可以根据需求自定义,比如可是替换成dbman之类,显得没那么敏感。然后根据请求进来的是php文件还是静态文件,转发给相应的程序处理。

如果我们希望/phpmyadmin是全局性的该怎么做呢?apache httpd里面可以通过设置alias的方式设置全局性的二级子目录,这样在服务器上的多个站点就可以共享配置了。很可惜根据nginx的文档,nginx现在还不能提供这样的功能。为了在多个站点的域名都有phpmyadmin,只能写到各个配置文件里了。

当然另外一个更为优雅的方法是将以上配置单独写到一个文件里,然后在主配置文件中include这个文件即可。相对于在每个域名下重复书写,这是更好的解决办法。我的常用做法是在/etc/nginx/conf.d目录下建立global.d目录,把上述内容存放到global.d里保存为phpmyadmin.conf。然后在配置文件里添加:

include /etc/nginx/conf.d/global.d//*.conf; 

这样如果还有其他全局性的配置,也可以一并放到这里。同时也省去了每个配置文件里都需要重复一大段的麻烦。

原文链接:https://www.qiquanji.com/post/4772.html

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

微信扫码关注

更新实时通知

作者:xialibing 分类:高级教程 浏览: