3

我有两个关于 nginx 的基本问题:

如何aliases在 localhost 中设置?

为了能够在 localhost 上访问许多不同的项目(例如 localhost/project1、localhost/project2 ...)。

我试过了

server {
    listen 80;
    server_name localhost;
    location /project1 { //Is it to match localhost/project1?
        root /var/www/project1/;
        index  index.html index.htm;
    }

    location /project2 {
        root /var/www/project2/;
        index  index.html index.htm;
    }
}

但是我得到一个404,我不明白为什么......

如何组织我们的域?

我见过许多 conf 使用与 apache2 (sites-availablesites-enabled)相同的组织,但默认情况下似乎不包含这些存储库,怎么办?

4

1 回答 1

2

您所指的目录结构sites-availablesites-enabled可以在 nginx 中复制。事实上,这也是我存储服务器配置的方式。

它们不会在 nginx 的标准安装中读取(来自源代码)。您必须编辑httpd.conf以下行并将其添加到http块的底部:

include /path/to/sites-enabled/*;

至于别名,很难确定您到底在寻找什么。您是否希望能够example.org/project1通过 url访问project1.example.org

如果是这样,其中一种方法是设置一个CNAME记录project1以指向您的服务器的 IP 地址。完成后,您将修改该站点的server块以接受来自该虚拟主机的连接:

server {
    listen 80;

    server_name project1.example.org;
    ... other declarations...
}
于 2013-04-03T04:27:19.040 回答