nginx位置块仅在conf文件中

时间:2018-10-08 21:02:20

标签: php nginx configuration

我能够在default.conf文件中放置一个位置块,并使它按预期工作。它将正确的文件从正确的目录传递到php-fpm服务器,并显示预期的结果。

现在,我想将该位置块移动到其自己的.conf文件中,以进行维护并简化将main / default .conf文件保留下来的情况。

但是,这不符合我的期望或预期。当我这样做时,nginx重新启动就很好,但是当我尝试浏览时,出现404错误。

这是仅位置信息的conf文件:

    SOCKET s = INVALID_SOCKET;

    if ((s = socket(AF_INET, SOCK_DGRAM, 0)) == INVALID_SOCKET)
    {
        WSACleanup();
        return;
    }

    sockaddr_in addr_recv;

    memset((char *)&addr_recv, 0, sizeof(addr_recv));
    addr_recv.sin_family = AF_INET;
    addr_recv.sin_port = htons(0);
    addr_recv.sin_addr.s_addr = htonl(INADDR_ANY);

    int server_addr_len = sizeof(addr_recv);

    // compiler doesn't know which bind I mean.
    int iResult = bind(s, (SOCKADDR *)&addr_recv, server_addr_len);

    if (iResult == SOCKET_ERROR)
    {
        closesocket(s);
        WSACleanup();
        return;
    }

正如我所说,如果我将确切的代码复制到主default.conf文件中,那么它将起作用。但是在它自己的conf文件中,没有。

最后,我希望每个位置都有一个不同的conf文件,其中每个位置代表我的应用程序的不同版本,并在不同版本的php-fpm上运行(这些php-fpm已在各自的端口上配置) )。

在Apache中,我能够使用别名和块来实现此目的,每个别名和块都在其自己的conf文件中。我正在尝试使用Nginx做类似的事情。

0 个答案:

没有答案