标签: nginx

如何让 dev.*.domain.com 在 nginx 上工作

我试图让 nginx 接受以下格式的网站:dev.*.domain.com。我已经阅读了文档,我知道我必须为此使用正则表达式。

通配符名称只能在名称的开头或结尾处包含星号,并且只能在点边框上。名称“www. .example.org”和“w .example.org”无效。但是,可以使用正则表达式指定这些名称,例如“~^www..+.example.org$”和“~^w.example.org$”。.example.org$”。星号可以匹配多个名称部分。名称“ .example.org”不仅匹配 www.example.org,还匹配 www.sub.example.org。

所以我有:

server {
        listen 80;
        server_name ~^dev\..+\.domain\.com\.br$ dev.domain.com.br;

        access_log /var/log/nginx/dev.domain.com.br.access.log;
        error_log /var/log/nginx/dev.domain.com.br.error.log;

        location / {
            proxy_pass http://127.0.0.1:68319/;
            include /etc/nginx/proxy.conf;
        }
        location /media/ {
            alias /my/folder/to/media/;
            expires 15d;
        }
        location /favicon.ico { 
            alias /my/folder/to/favicon.ico;
            expires 15d;
        }
    }
Run Code Online (Sandbox Code Playgroud)

不知何故,它最终被这条规则捕获(这是最后一条):

server {
        listen 80;
        server_name *.domain.com.br domain.com.br;

        access_log /var/log/nginx/domain.com.br.access.log;
        error_log /var/log/nginx/domain.com.br.error.log;

        location / {
            proxy_pass http://127.0.0.1:8080/;
            include /etc/nginx/proxy.conf;
        }
        location /media/ {
            alias /my/path/to/media/;
            expires 15d;
        }
        location /favicon.ico { 
            alias /my/path/to/favicon.ico; …
Run Code Online (Sandbox Code Playgroud)

nginx

0
推荐指数
1
解决办法
1274
查看次数

Nginx 如何禁用多线程下载

我想知道是否可以在 nginx 上禁用多线程下载。现在用户可以使用下载管理器通过拆分文件来下载文件,我想知道如何在我的 nginx 服务器上防止这种情况。

nginx

0
推荐指数
1
解决办法
1745
查看次数

在安全方面禁用 Nginx 访问日志是个好主意吗?

根据我发现的一篇博客文章,禁用 Nginx 访问日志可以加快速度。每次有人访问该站点时,Nginx 都必须写入此文件。

但是,在设置 fail2ban 时,我意识到这些程序使用访问日志来保护服务器。所以我的问题是,我应该禁用访问日志还是应该启用它们并设置fail2ban?

nginx fail2ban

0
推荐指数
1
解决办法
1874
查看次数

如何在nginx上制作代理?

我将如何设置我的网络服务器以下面描述的方式工作?

  • Http 请求:mypublic.com ---> nginx 正常处理,因为它已经设置好了 ( listen 80;)

  • Http 请求:myprivate.com ---> 由 apache 处理,设置为在 8080 ( listen 8080) 上工作

我想避免在浏览器中输入地址时包含端口,在 nginx 中使用某种模型(代理?/squid?)。两个域都指向我的机器并按命名设置。

freebsd nginx proxy apache-2.2

0
推荐指数
1
解决办法
616
查看次数

从本地主机扫描端口

我在我的服务器上的不同端口上看到很多 tcp 连接,状态为“TIME_WAIT”。只是简单的端口扫描,但我看不到这个混蛋的 IP 地址,因为连接来自我的 nginx。你能给我一个提示,我怎么能看到这个混蛋的IP地址?

这是示例:

[root@vh9 ~]# netstat
tcp        0      0 srv:http                    srv:53280                   TIME_WAIT
tcp        0      0 srv:http                    srv:53536                   TIME_WAIT
tcp        0      0 srv:http                    srv:52768                   TIME_WAIT
tcp        0      0 srv:http                    srv:53024                   TIME_WAIT
Run Code Online (Sandbox Code Playgroud)

nginx netstat tcp apache-2.2

0
推荐指数
1
解决办法
339
查看次数

在 AWS EC2/nginx 上部署静态站点:我做错了什么?

我设置了一个微型实例(Ubuntu,32 位)并分配了一个弹性 IP(23.23.245.104)

公共 DNS:ec2-23-23-245-104.compute-1.amazonaws.com

我成功地通过 ssh 连接到机器并安装了 nginx。

然后我在 nginx 的配置文件(/etc/nginx/sites-available/default)中编辑了 server_name 属性

server_name ec2-23-23-245-104.compute-1.amazonaws.com;
Run Code Online (Sandbox Code Playgroud)

重新启动 nginx 并点击http://ec2-23-23-245-104.compute-1.amazonaws.com但出现“无法连接”错误。

我忘了做什么?

谢谢

nginx static-content amazon-ec2 amazon-web-services

0
推荐指数
1
解决办法
1080
查看次数

应用得到了媒体,然后服务器得到了拥有。我又加了 8 台服务器,还是太慢了

我们的新应用程序今天受到了很多媒体的关注,每小时都有成千上万的新用户……但它变得太慢以至于无法使用。

我们使用的 Rails 3 补丁为最新版本、ubuntu、Unicorn、nginx、postgresql、memcache。

我已经添加了 8 台新服务器,但几乎没有什么不同。我还尝试将 nginx 的 keepalive 值设置为 1。除了添加更多服务器之外,我不知道如何改进响应时间。我有 10 个独角兽工人在每台服务器上运行。问题似乎是每个服务器上的请求队列太长。我可能是错的,我不完全确定是什么原因造成的,我只知道它昨天在当前负载的 2% 下运行良好。

任何帮助是极大的赞赏

ubuntu nginx ruby-on-rails unicorn

0
推荐指数
1
解决办法
79
查看次数

跳过站点某些区域的 nginx PHP 缓存?

我刚刚用 nginx(我是新手)和 PHP 设置了一个新服务器。在我的网站上,基本上有 3 种不同类型的文件:

  • 静态内容,如 CSS、JS 和一些图像(大多数图像在外部 CDN 上)
  • 主要的 PHP/MySQL 数据库驱动网站,本质上就像一个静态网站
  • 动态 PHP/MySQL 论坛

我从这个问题这个页面了解到,静态文件不需要特殊处理,会尽快提供。

我按照上述问题的答案为 PHP 文件设置缓存,现在我有一个这样的配置:

location ~ \.php$ {
    try_files $uri =404;

    fastcgi_cache one;
    fastcgi_cache_key $scheme$host$request_uri;
    fastcgi_cache_valid  200 302 304 30m;
    fastcgi_cache_valid  301 1h;

    include /etc/nginx/fastcgi_params;
    fastcgi_pass unix:/var/run/php-fastcgi/php-fastcgi.socket;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME /srv/www/example$fastcgi_script_name;
    fastcgi_param HTTPS off;
}
Run Code Online (Sandbox Code Playgroud)

但是,现在我想防止在论坛上缓存(无论是针对所有人还是仅针对登录用户 - 还没有检查后者是否适用于论坛软件)。我听说位置块内有“如果是邪恶的”,所以我不确定如何继续。使用位置块内的 if 我可能会在中间添加它:

if ($request_uri ~* "^/forum/") {
    fastcgi_cache_bypass 1;
}
# or possible this, if I'm able to cache pages …
Run Code Online (Sandbox Code Playgroud)

php nginx cache

0
推荐指数
1
解决办法
4626
查看次数

rm 会删除 web 客户端当前正在访问的文件吗?

我的网络服务运行nginxphp使用X-Accel-Redirect标头向客户端传送文件,如果我使用rm /my/folder/*.*它将如何处理客户端当前正在访问/下载的文件?

linux filesystems debian nginx

0
推荐指数
1
解决办法
359
查看次数

nginx 将 https://www 重定向到 https:// non-www 没有不受信任的连接警告?

我有 myapp.com 的有效 SSL 证书,但 www.myapp.com 没有。基于这个问题,在我看来,如果没有获得 www.myapp.com 的另一个证书,就不可能立即从https://www.myapp.com重定向到https://myapp.com

我试图避免为另一个仅用于重定向到“正确”站点的证书支付更多的钱,但我也想避免在有人无意中访问错误版本时出现严重的安全警告。

是否可以使用自签名证书或任何免费的东西来让某人重定向到正确的版本而无需购买其他证书?

ssl nginx https

0
推荐指数
1
解决办法
2119
查看次数