我已经使用certbot应用程序创buildSSLencryption证书 https://www.digitalocean.com/community/tutorials/how-to-use-certbot-standalone-mode-to-retrieve-let-s-encrypt-ssl-certificates 并configuration我的nginx服务器SSL证书和密钥,但是当我访问网站与https仍然不安全。 此外,我已经检查了我的网站与SSL实验室它返回一个总体评级C与密码强度的警告 该服务器使用RC4和现代协议。 等级上限为C. 更新域名 https://cushbu.com
我build立了一个Nginx反向代理服务器,服务于另一台服务器上托pipe的mp4文件。 现在一切正常,除了caching。 虽然我有proxy_cache_valid设置为1天( proxy_cache_valid any 1d ),caching将始终自动删除一段时间后(5-10分钟,我认为)。 我的文件大小范围从200 – 1500MB(平均700MB)。 我无法弄清楚configuration有什么问题。 任何事情都可能有帮助 这里是configuration: worker_processes auto; worker_rlimit_nofile 100000; events { worker_connections 5000; multi_accept on; use epoll; } http { include mime.types; default_type application/octet-stream; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 10; keepalive_requests 1024; client_body_timeout 12; client_header_timeout 12; send_timeout 10; proxy_cache_path /tmp/mycache keys_zone=mycache:10m use_temp_path=off; limit_conn_zone $binary_remote_addr zone=addr:10m; […]
我们在nginx反向代理服务器后面有一堆服务 foo.com/service1/index.html被redirect到service1/index.html好。 但是当service1/index.html具有像/js/bar.js这样的脚本src时,浏览器会调用foo.com/js/bar.js 。 我希望它所有的电话foo.com/service1/js/* 。 这怎么能实现? 这里是一个nginx conf的片段 location /service1 { proxy_pass http://service1 } location /js/(.*)$ { proxy_pass http://service1/js } 当service2/js有一些资源时,它将redirect到foo.com/js并中断。 这怎么解决?
我需要有一个ALB设置的健康检查path,指向一个有docker容器Nginx的服务器。 我没有访问EC2服务器内的文件。 我可以在Docker-Container中添加一些东西 我已经尝试了下面的解决scheme,但它不适合我,因为我有我的configuration文件中的另一个阻止,我猜。 适用于AWS的Nginx解决scheme亚马逊ELB运行状况检查 – 不带IF的情况下返回200 我的configuration文件如下所示: server { listen 443 ssl http2; server_name server-test.com; access_log /var/log/nginx/nginx.access.log; error_log /var/log/nginx/nginx.error.log; ssl on; ssl_certificate /etc/nginx/ssl/cert.pem; ssl_certificate_key /etc/nginx/ssl/server.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256'; ssl_session_timeout 1d; ssl_session_cache builtin:1000 shared:SSL:10m; ssl_session_tickets off; location / { proxy_pass http://server-test.io:5015/; proxy_redirect off; ##proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header […]
less数用户无法通过移动连接访问我们的网站,但可以使用WiFi。 这似乎只影响Android,无论浏览器types如何,同一客户可以通过不同的Android访问网站。 它只在移动连接上,但在同一设备上的WiFi上工作。 信号并不简单。 错误是:“此网站无法到达…意外closures连接。 ERR_CONNECTION_CLOSED” 我们正在使用HSTS和ssllabs ssltest给了我们A +。 它由nginx提供。 有什么build议可能会导致这个? 我们正在失望。 谢谢!
我们在Apache中有这个工作。 你可以在这里看到http://screencast-o-matic.com/watch/cbQrFpI0S9 。 $ request_uri /h_32/w_36/test.jpg 需要被路由到 /index.php/img/i/h_32/w_36/test.jpg index.php会将请求路由到“img”控制器和“我”方法,然后处理图像并返回。 但是,我的MVC工作的REQUEST_URI。 所以简单地重写url将无法正常工作。 REQUEST_URI需要修改。 您可以在最后一个位置块中看到我正在传递修改后的REQUEST_URI,但是Nginx正在尝试打开/var/www/vhosts/ezrshop.com/htdocs/h_32/w_36/test.jpg(请参阅下面的错误日志 )扔404。 Nginx是不是应该把它发送给index.php? 为什么404? root /var/www/vhosts/example.com/htdocs; index index.php index.html; set $request_url $request_uri; location ~ (h|w|fm|trim|fit|pad|border|or|bg)_.*\.(jpg|png)$ { if ($request_uri !~ "/img/i/") { set $request_url /index.php/img/i$1.$2; } try_files $uri $uri/ /index.php/img/i$1.$2; } location / { try_files $uri $uri/ /index.php$uri?$args; } location ~ ^(.+\.php)(.*)$ { fastcgi_pass […]
我已经安装了nginx,我正在努力设置我的服务器块。 我已经在/ etc / nginx中创build了站点可用和启用站点的文件夹。 之后,我创build了一个名为我要设置的子域的文件,并放入以下内容: subdomain.mydomain.com(当然换成我的真实域名) upstream subdomain.mydomain.com { server 127.0.0.1:1234; keepalive 30; } server { listen 80; listen [::]:80; server_name subdomain.mydomain.com; access_log off; error_log /var/log/nginx/subdomain.mydomain.com-error.log crit; location / { 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 Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_pass http://subdomain.mydomain.com; proxy_redirect […]
将nginx设置为反向代理与gunicorn应用程序服务器(后端应用程序服务器和nginx之间的典型1对1映射)时,我configuration了以下内容: upstream my_server { server unix:/home/user/folder/app/app.sock fail_timeout=0; } location @https_proxy_to_app { proxy_set_header X-Forwarded-Proto https; include proxy_params; proxy_redirect off; proxy_pass http://my_server; } 这是有关该主题的许多文献规定的。 虽然这有效,但我还是有一些问题。 首先(和平凡),为什么需要包括http://在proxy_pass http://my_server; ? 其次(更重要的是),我是否需要为这种设置设置resolver指令? 我没有使用AWS的弹性负载平衡器, resolver指令周围的很多处方恰好围绕着AWS ELB。 有人可以用通俗的话来解释我为什么需要设置它吗? 意外的服务器pipe理员在这里,所以需要一个专家意见。 请注意,我也使用OSCP装订。
这是我在NginX / sites-enabled目录中的文件: upstream tomcat_server { server 192.168.1.100:8080 fail_timeout=0; } server { listen 80 default_server; listen [::]:80 default_server; server_name _____.com www._____.com; location / { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://tomcat_server; } } 现在,stream程如下所示: 我访问我的域名_____.com,请求被映射到我的路由器在端口39080的IP。 在我的路由器中,端口80将端口39080的请求端口转发到192.168.1.136(我的nginx服务器正在运行,单独的机器)。 Nginx正在监听端口80并提取请求。 我想要做的是将请求redirect到运行在单独机器上的Tomcat服务器,所以我把proxy_pass放到了Tomcat服务器上。 实际发生的事情是请求挂起,屏幕上出现一个空白页面。 Tomcat日志显示对请求的200 OK响应,但是它应该加载其余的内容,包括页面,图像和脚本以及其他内容。 “GET / app-portal / HTTP / 1.0”200 // 而已 [ […]
我有一个大致看起来像这样的设置(我试图尽可能简化这个): 端口443 – nginx监听并转发到端口80,configuration看起来像这样 server { listen 443 ssl; location / { proxy_pass http://127.0.0.1:80; 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 https; proxy_set_header X-Forwarded-Port 443; proxy_set_header Host $host; } 端口80 – 清漆(反向代理),将stream量转发到端口8080,除非有caching命中。 端口8080 nginx设置为PHP与fastcgi。 我有一些共同的configuration: location ~ \.php$ { … include fastcgi_params; } 和看起来像这样的fastcgi_params文件 … fastcgi_param HTTPS $https if_not_empty; 我一直在试图做的是创build一个安装程序,其中nginx在侦听端口8080时能够检测是否向http或https提供内容。 它需要告诉这个PHP,所以它可以创build正确的scheme的URL。 我在想,在某个地方,我应该听X-Forwarded-Proto ,然后告诉nginx https是打开的。 […]