使用docker配置nginx

时间:2017-11-10 15:25:30

标签: nginx

我有一个使用Nginx和php-fpm的docker环境。

这是我的nginx conf。

server {
    sendfile  off;
    server_name project.dev;
    listen 80;

    root /var/www/html/project/web;

    error_log /var/log/nginx/error.log;
    access_log /var/log/nginx/access.log;

    location / {
        try_files $uri @rewriteapp;
    }

    location @rewriteapp {
        rewrite ^(.*)$ /app_dev.php/$1 last;
    }

    location ~ ^/(app|app_dev|config)\.php(/|$) {
        fastcgi_pass php-fpm:9000;
        fastcgi_split_path_info ^(.+\.php)(/.*)$;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param HTTPS off;
    }
}

我在project.dev文件中添加了/etc/hosts

使用project.dev时效果很好。

但是我希望将server_name project.dev;替换为server_name _;,因此与端口80的每个连接都将转到我的应用,并将在开发中工作。

但是当我这样做时它不起作用。

使用端口80的每个连接进入我的项目而不使用服务器名称的配置是什么?

1 个答案:

答案 0 :(得分:2)

取消server_name并在您的监听中使用default_server

server {
    listen *:80 default_server;
    ...
}