Webmin 安装 phpMyAdmin 的方式似乎是将其安装在 public_html 目录中。例如
https://mydomain.com/phpMyAdmin
我不想争论这个漏洞,相反,我希望 phpMyAdmin 在 Webmin 上发挥作用,就像在 cPanel 中一样。
一个建议是创建一个子域并将其安装在那里,但这每次都是一个额外的步骤。
cPanel 甚至没有可通过域访问的 phpMyAdmin。相反,它的位置如下:
https://server1.myserver.com:2083/cpsess9292847592/3rdparty/phpMyAdmin/index.php
它只能通过网络控制面板访问。它似乎也在 URL 中添加了一个会话 ID,因此它只对当前登录有效,然后如果用户注销或会话无效,则该 URL 不存在。
更好的是,管理员还可以通过 WHM 在一个中心位置访问此信息。
如何让 phpMyAdmin 在每次使用时自动安装(就像在 cPanel 中一样),并安装在像 cPanel 一样使用服务器主机名的非公共目录中?
答案1
澄清一下,如果您想使用 URL http://yourdomain/phpmyadmin 访问 phpMyAdmin,同时将主网站文件保留在 /home/dark/public_html 中并将 phpMyAdmin 文件保留在 /var/www/html 中,您可以使用单独的服务器块对于 phpMyAdmin。
服务器 { 听80; 听[::]:80; 服务器名称 yourdomain.com; 根/home/用户名/public_html; 索引index.phpindex.html; 地点 / { try_files $uri $uri/ =404; } } 服务器 { 听80; 听[::]:80; 服务器名称 yourdomain.com; 位置/phpmyadmin { 根/var/www/html; 索引index.php; 位置 ~ \.php$ { 包括片段/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; } } }
第一个服务器块处理位于 /home/dark/public_html 中的主要网站文件。
第二个服务器块处理对 /phpmyadmin 的请求并将根目录设置为 /var/www/html。此外,它还包含一个 location ~ .php$ 块来处理 PHP 文件并将它们传递到 PHP FastCGI 服务器进行处理。确保调整 fastcgi_pass 指令以匹配您系统的正确 PHP-FPM 套接字路径。