Mysql 在Ubuntu上使用ngnix安装PHPMyAdmin只下载文件

Mysql 在Ubuntu上使用ngnix安装PHPMyAdmin只下载文件,mysql,nginx,phpmyadmin,Mysql,Nginx,Phpmyadmin,我需要解决一个问题。我有带有公共地址的ngnix,我需要通过ip在本地网络中使用phpmyadmin访问我的数据库。我已经按照指南在地址/usr/share/phpmyadmin处配置了它。目前,我可以从这个目录下载php文件,但不需要执行。我需要做什么才能从浏览器连接到phpmyadmin? 这是我的ngnix配置: server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /usr/

我需要解决一个问题。我有带有公共地址的ngnix,我需要通过ip在本地网络中使用phpmyadmin访问我的数据库。我已经按照指南在地址/usr/share/phpmyadmin处配置了它。目前,我可以从这个目录下载php文件,但不需要执行。我需要做什么才能从浏览器连接到phpmyadmin? 这是我的ngnix配置:

server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;

root /usr/share/nginx/html;
index index.html index.htm;

server_name 192.168.1.101;

    location ^~ /permanentmark/ {
        alias /usr/share/phpmyadmin/;
        index index.php index.html;
        location ~ /pma(/.*\.php) {
            include fastcgi_params;
            fastcgi_param SERVER_NAME localhost;
            fastcgi_param SCRIPT_FILENAME /usr/share/phpmyadmin$1;
            fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
            fastcgi_index index.php;
            }

    }
}

我们仍然需要告诉Nginx使用我们的PHP处理器来处理动态内容。我们在服务器块级别执行此操作(服务器块类似于Apache的虚拟主机)。通过键入以下内容打开默认Nginx服务器块配置文件:

sudo nano /etc/nginx/sites-available/default
sudo nginx -t
Nginx默认服务器块文件如下所示:

server {
listen 80 default_server;
listen [::]:80 default_server;

root /var/www/html;
index index.html index.htm index.nginx-debian.html;

server_name _;

location / {
    try_files $uri $uri/ =404;
  }  
}
我们需要为我们的站点对此文件进行一些更改

首先,我们需要添加index.php作为index指令的第一个值,以便在请求目录时提供名为index.php的文件(如果可用)。 我们可以修改server_name指令以指向服务器的域名或公共IP地址。 对于实际的PHP处理,我们只需要通过删除每行前面的磅符号(#)来取消对处理PHP请求的文件段的注释。这将是location~.php$location块、包含的fastcgi-php.conf代码段以及与php fpm关联的套接字。 我们还将使用相同的方法取消注释处理.htaccess文件的位置块。Nginx不处理这些文件。如果这些文件中的任何一个碰巧进入了文档根目录,则不应将它们提供给访问者

您需要进行的更改如下所示:

server {
listen 80 default_server;
listen [::]:80 default_server;

root /var/www/html;
index index.php index.html index.htm index.nginx-debian.html;

server_name server_domain_or_IP;

location / {
    try_files $uri $uri/ =404;
 }

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
 }

location ~ /\.ht {
    deny all;
  }
}
完成上述更改后,可以保存并关闭该文件。 通过键入以下内容来测试配置文件的语法错误:

sudo nano /etc/nginx/sites-available/default
sudo nginx -t
如果报告了任何错误,请返回并重新检查文件,然后继续。 准备就绪后,重新加载Nginx以进行必要的更改:

sudo systemctl reload nginx

您的嵌套位置与URI不匹配,请使用
location~\.php$
fastcgi\u param SCRIPT\u FILENAME$request\u FILENAME。看见