为什么我的 nginx 别名不起作用?

Rob*_*Rob 11 nginx alias

我正在尝试设置一个别名,以便当有人访问时/phpmyadmin/,nginx 将从而/home/phpmyadmin/不是从通常的文档根目录中提取它。但是,每次我提取 URL 时,它都会在所有未通过 fastcgi 提取的项目上给我一个 404。fastcgi 似乎工作正常,而其余的则不然。strace告诉我它试图从通常的文档根目录中提取其他所有内容,但我不知道为什么。任何人都可以提供一些见解吗?

这是我的配置的相关部分:

            location ~ ^/phpmyadmin/(.+\.php)$
            {
                    include fcgi.conf;
                    fastcgi_index index.php;
                    fastcgi_pass  unix:/tmp/php-cgi.sock;
                    fastcgi_param SCRIPT_FILENAME /home$fastcgi_script_name;
            }

            location /phpmyadmin
            {
                    alias /home/phpmyadmin/;
            }
Run Code Online (Sandbox Code Playgroud)

Rob*_*Rob 15

想了个办法。我不确定它是否是最好的,但它现在肯定可以工作。

这是我所做的:

        location ~ ^/phpmyadmin/(.*)$
        {
                alias /home/phpmyadmin/$1;
        }
Run Code Online (Sandbox Code Playgroud)