在使用map时,有没有什么特别需要在nginx中匹配子网? 我在http {}块中有下面的configuration。 客户端IP是10.0.3.1。 如果我删除10.0.3.1条目,它总是返回拒绝,而不是匹配10.0.3.0/24子网。 是否有一个nginx模块需要我失踪或什么? 我在一些博客文章的基础上configuration这个configuration,但不能find任何官方文档说这个符号是支持的。 map $remote_addr $allowed { 10.0.3.1 allow; 10.0.2.0/24 allow; 10.0.3.0/24 allow; default deny; }
在nginx文件夹中,我看到有777个权限的文件夹,我无法在SFTP中访问。 这是正常的吗? https://www.dropbox.com/s/mbvjfhk8h7acnkp/Screenshot%202016-09-07%2017.12.16.png?dl=0 我不明白,该文件夹顶部的小箭头表示。 对不起,作为一个菜鸟!
我正在创build一个简单的nginx web服务器。 有几个PHP文件和一些静态页面,我已经将它们分成不同的文件夹,/ data / webjp中的php文件和/ data / webjp_static中的html文件。 这里是configuration文件: server { listen 80; location / { proxy_pass http://127.0.0.1:7900/; proxy_store on; proxy_set_header Host $host; proxy_redirect off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } server { listen 7900; server_name 127.0.0.1; root /data/webjp/weber; index index.html index.php; location ~ .*\.(php|php5)?$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params; […]
有一些类似的问题,但他们不能解决我的问题。 我使用nginx作为cdn的代理。 如果浏览器正在接受webp作为图像格式,则应该提供服务,否则为原始。 假设总是有myfilename.jpg和myfilename.jpg.webp (如果不存在的话,我有一个后备可以生成图片)。 我做这个映射: map $http_accept $webp_suffix { default ""; "~*webp" ".webp"; } 这是nginxconfiguration: server { listen 80; server_name images.cdn.de; error_page 403 404 = /-; location /- { proxy_pass http://web:8808; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Original-URI $original_uri; proxy_read_timeout 600; internal; } location / […]
我正在尝试使用本教程将ssl添加到我的网站( https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-14-04 )。 浏览器被redirect到https://www.example.com,但后来超时。 我在这里看过类似的问题,没有运气。 有什么我失踪? 请看下面的我的nginxconfiguration(实际域名删除): server { listen 80; server_name example.com www.example.com; return 301 https://www.example.com$request_uri; } server { listen 443; ssl on; root /var/www/example/public; index index.php index.html index.htm; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/www.example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/www.example.com/privkey.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_dhparam /etc/ssl/certs/dhparam.pem; ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA'; ssl_session_timeout 1d; ssl_session_cache shared:SSL:50m; ssl_stapling on; ssl_stapling_verify on; add_header […]
在Amazon Linux EC2实例上使用nginx 1.8.1。 用作反向代理来支持在不同实例上运行Apache https。 一切工作正常,除了这个问题。 我想从nginx提供一个静态页面,以防止我想closuresApache服务器实例。 所以我这样做了: location / { try_files /site-down.html $uri @backend; } 所以在我closures后端服务器之前,我在nginx服务器的根目录下创build了一个符号链接到一个静态html文件,如下所示: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>example.com</title> <style type="text/css"> body { background-image:url('/images/back-soon-background.jpg'); font-family: arial,verdana,sans-serif; text-align: center; } #msg { background-image: url('/images/back-soon-oval.png'); background-repeat: no-repeat; width: 600px; padding-top: 140px; padding-left: 50px; […]
我正在使用rsyslog来收集nginx日志。 所有看起来都不错,只是用'#011'文字replace一般的标签。 用'\ t'分隔符定义的Nginx日志格式。 损坏的输出示例: 217.118.93.88#0111473674833.412#0114418687#011… 它应该看起来如何: 217.118.93.88 1473674833.412 4418687 … 为什么会发生这种情况,以及如何禁用这种replace? 谢谢!
假设我有许多不同域名的网站, domain1.com , domain2.com等。我已经在wildfly中为这些网站设置了正确的虚拟主机configuration。 正确的DNS条目也到位。 如何将请求路由到我的服务器以便这些域名进行瘫痪? 我只是在端口80和443上运行野蛮? 有些东西告诉我这是一个糟糕的主意,因为默认情况下,wildfly不会在这些端口上运行。 要在这些端口上运行wildfly需要绑定到这些端口作为特权用户,然后切换到非特权用户。 这样做的麻烦和困难表明这是不正确的。 我在nginx或apache2后面运行野蛮吗? 我的应用程序dynamic地加速网站和虚拟主机configuration。 我是否可以将所有请求转发给wildfly并让它处理? ???
我的架构设置是在NodeJS的CentOS上运行的SSO服务,端口10102和10142,我需要所有端口80的请求redirect到443外部和内部我上游一切到NodeJS的上述端口,这里是我的configuration: upstream sso1 { server localhost:10102; server localhost:10142; } server { listen [::]:80; listen 443 ssl; server_name www.site.business site.business; ssl_certificate /etc/nginx/cert.crt; ssl_certificate_key /etc/nginx/cert.key; ssl_session_cache builtin:1000 shared:SSL:10m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4; ssl_prefer_server_ciphers on; if ($scheme = http) { return 301 https://$server_name$request_uri; } location / { proxy_pass http://sso1; proxy_read_timeout 90; proxy_redirect http://sso1 https://www.site.business; proxy_set_header Host […]
我们有几个位置设置了反向代理。 我们目前的configuration和运行是: upstream backends { server Backend1; server Backend2; } server { … other server config stuff here … location /App1 { … proxy header stuff … proxy_pass http://backends/App1; } } 现在我们要做的就是设置它,区分大小写的后端(在本例中是Backend1 / 2 http:// backends / App1 )可以不区分大小写,这样您就可以访问http:// example.com/app1或http://example.com/App1 (或其任何变体) 我们正试图开始工作的新configuration如下所示: location ~* /App1 { proxy_pass http://backends/App1; } 但是当我们重新加载configuration时没有骰子。 我们看到错误: “proxy_pass”不能在由正则expression式给定的位置,或在命名的位置,或在“if”语句,或在“limit_except”内的URI位置… 任何想法/见解如何才能做到这一点?