Articles of dns

虚拟主机上的nginx子域configuration

在关于nginx子域configuration的SO上有几个问题,但是没有find和我的完全一样的问题。 假设我从我们组织的高层networkingpipe理员example.com获得了一个虚拟主机some.example.com 。 我想使用some.example.com作为我的主站点,并使用foo.some.example.com和bar.some.example.com作为辅助使用(代理等)。 我试过这个简单的configuration,并把它放在sites-enabled但没有工作: server { listen 80; server_name some.example.com; root /home/me/public_html/some; index index.html index.htm; } server { listen 80; server_name foo.some.example.com; root /home/me/public_html/foo; index index.html index.htm; } server { listen 80; server_name bar.some.example.com; root /home/me/public_html/bar; index index.html index.htm; } 在这个设置some.example.com工作正常,但另外两个浏览器返回, could not find foo.some.example.com 。 我在一台Ubuntu服务器上运行它。 这个configuration有什么问题吗? 或者是我应该与更高级别的networkingpipe理员(使foo.some.example.com和bar.some.example.com注册)?

如何在dokku服务器的根域指向Dokku应用程序

如何指向将在dokku服务器中设置的dokku应用程序指向服务器本身的根域。 假设我的域是apps.com ,要实现的应用程序叫做botapp 。 如果我使用虚拟主机命名,并做git remote add dokku dokku@apps.com:botapp将指向botapp.apps.com 。 我怎样才能让botapp指向apps.com本身(根域)。 另外,我怎么知道一个dokku应用程序的生根端口,尽pipe使用子域(虚拟主机命名)?

将Nginx中的dynamicproxy_passdynamic添加到Kubernetes中的另一个Pod

我正在尝试创build一个将请求转发到/<service>到http://<service>的nginx代理。 我首先尝试了以下内容: location ~ ^/(.+)$ { set $backend "http://$1:80"; proxy_pass $backend; } 但它没有说(例如,当调用/myservice ): [error] 7741#0: *1 no resolver defined to resolve http://myservice 由于myservice不是外部可访问的,我尝试安装go-dnsmasq作为同一个pod中的边车,并尝试将其用于DNSparsing(如本例中所见),并将nginxconfiguration更改为如下所示: location ~ ^/(.+)$ { resolver 127.0.0.1:53; set $backend "http://$1:80"; proxy_pass $backend; } 但现在nginx失败: [error] 9#9: *734 myservice could not be resolved (2: Server failure), client: 127.0.0.1, server: nginx-proxy, request: "GET /myservice […]

如何将一个域名指向另一个网站的页面?

例如,我在域example.com下有一个网站。 在该网站中,我有一个像这样的example.com/hello页面。 现在我需要把我的第二个域hello.com指向那个页面example.com/hello 。 它不应该是一个重新指导。 访问者应该留在hello.com但是请参阅页面example.com/hello的内容。 这可能吗? 我们可以在DNS或Nginx中做到吗? 使用代理传递后的访问日志: 123.231.120.120 – – [10/Mar/2016:19:53:18 +0530] "GET / HTTP/1.1" 200 1598 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36" 123.231.120.120 – – [10/Mar/2016:19:53:18 +0530] "GET /a4e1020a9f19bd46f895c136e8e9ecb839666e7b.js?meteor_js_resource=true HTTP/1.1" 404 44 "http://swimamerica.lk/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.$ 123.231.120.120 – – [10/Mar/2016:19:53:18 +0530] […]

Nginx:交替域的不同robots.txt

概要 我有一个内部和外部域指向它的单个Web应用程序,我想要一个robots.txt阻止所有访问到内部域,但允许所有访问外部域。 问题细节 我有一个简单的Nginx服务器块,我用它代理Django应用程序(见下文)。 正如你所看到的,这个服务器块响应任何域(由于缺lessserver_name参数)。 不过,我想知道如何标记特定的域名,例如Nginx会为他们提供一个自定义的robots.txt文件。 更具体地说,域example.com和www.example.com将从htdocs目录提供默认的robots.txt文件。 (由于设置了“root / sites / mysite / htdocs”,robots.txt文件位于/sites/mysite/htdocs/robots.txt) 但是,我还希望域“example.internal.com”(指与example.com相同的服务器)具有自定义robots.txt文件服务; 我想创build一个自定义robots.txt,所以谷歌不索引该内部域。 我想过复制服务器块,并在其中一个服务器块中指定以下内容。 然后以某种方式覆盖该服务器块中的robots.txt查找。 "server_name internal.example.com;" 但是为了这个目的复制整个服务器块看起来不太干。 我也想过使用if语句来检查主机头是否包含内部域。 然后以这种方式提供自定义的robots.txt文件。 但Nginx说如果是邪恶的 。 为内部域提供自定义robots.txt文件的好方法是什么? 感谢您的帮助。 这是我正在使用的服务器块的代码示例。 upstream app_server { server unix:/sites/mysite/var/run/wsgi.socket fail_timeout=0; } server { listen 80; root /sites/mysite/htdocs; location / { try_files $uri @proxy_to_app; } location @proxy_to_app { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header […]

Django错误(外部IP):无效的HTTP_HOST头:'* .domain.com'

我已经用Nginx,Gunicorn,Django堆栈创build了一个Django(1.7)web应用程序,最近我开始得到一些错误: [Django] ERROR(EXTERNAL IP):无效的HTTP_HOST标题:'* .domain.com'。 根据RFC 1034/1035提供的域名无效。 经过search,我发现了几个build议把通配符作为允许的主机,即 ALLOWED_HOSTS = ['*'] 不过,我仍然得到这个错误。 以下是完整的错误消息: Request repr(): <WSGIRequest path:/, GET:<QueryDict: {}>, POST:<QueryDict: {}>, COOKIES:{}, META:{'HTTP_ACCEPT_ENCODING': 'none', 'HTTP_CONNECTION': 'close', 'HTTP_HOST': '*.domain.com', 'HTTP_USER_AGENT': 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.2)', 'HTTP_X_FORWARDED_FOR': '11.111.111.11', 'HTTP_X_FORWARDED_HOST': 'subdomain.domain.com', 'HTTP_X_REAL_IP': '11.111.111.11', 'PATH_INFO': u'/', 'QUERY_STRING': '', 'RAW_URI': '/', 'REMOTE_ADDR': '127.0.0.1', 'REMOTE_PORT': '51349', 'REQUEST_METHOD': […]

proxy_pass不使用/ etc / hosts来parsingDNS

在nginx中, proxy_pass指令不使用/etc/hosts文件parsingDNS。 任何方式来使这种可能性(也许通过利用Lua作为最后的手段)?

HTTP / 2和CNAME如何协同工作?

我不知道如何去问,所以我会试着用一个例子来解释。 我在使用HTTP/2服务器example.com上有这些资源: //example.com/css/file.css //example.com/js/file.js //example.com/images/file.png 我想要的是通过指向域example.com的别名域cdn.example2.com加载其中的一个文件。 所以,HTML中的实际资源应该如下所示: //example.com/css/file.css //cdn.example2.com/js/file.js -> points to //example.com/js/file.js //example.com/images/file.png 我的问题是:第二个例子中的所有资源是否由浏览器通过单个连接加载,因为当没有别名域时,它们将被加载? 感谢帮助。

Nginx作为Docker VHosts的反向代理

我目前正在试图build立自己的networking服务器/服务,并想build立这样的事情: WordPress的主要“博客” Gitlab为我的git存储库 为我的数据存储自己的云 我一直在使用Docker获得一个很好的小gitlab运行,这工作得很好,映射到我的web服务器上的端口:81与我的域名。 让我感到困扰的是,Docker映像总是绑定到一个特定的portnumber,因此不是很容易记住,所以我喜欢做这样的事情: git.mydomain.com for gitlab mydomain.com (no subdomain) for my blog owncloud.mydomain.com for owncloud 据我所知,我需要一个反向代理为此,我决定使用nginx。 所以我这样设置: http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name mydomain.com; location / { proxy_pass http://localhost:84; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } error_page 500 502 503 […]

如何禁止通过IP地址直接访问网站

我有一个VPS的网站。 我遇到的问题是,当我input服务器的IP,它链接到网站。 即使inputmail.domain.com,它也是一样的。 如何禁用该function,以便访问者能够收到消息或被定向到域名? 我试图禁用IP和邮件logging在云耀斑,但没有奏效。 我的设置是: VPS on Linux Debian Nginx no control panel just command line Cloudflare DNS setup with BIND