相关疑难解决方法(0)

如何知道node.js中的请求是http还是https

我正在使用nodejs和expressjs.我想知道request.headers.protocol在clientRequest对象中是否有类似的东西.我想为web链接构建baseUrl.因此,如果请求是通过https完成的,我想在所有链接中保留https.

    var baseUrl = request.headers.protocol + request.headers.host;
Run Code Online (Sandbox Code Playgroud)

node.js express

47
推荐指数
5
解决办法
6万
查看次数

Elastic Beanstalk Http重定向到Https

我知道之前已经问过这个问题,但似乎没有什么对我有用.我尝试过多种不同的东西,例如这些问题中描述的答案:

如何让Elastic Beanstalk nginx支持的代理服务器从HTTP自动重定向到HTTPS? 将EC2 elb从http重定向到https

他们似乎都没有工作.我是一个aws noob,所以我不完全确定如何编辑配置文件 - 或者我是否做错了什么.

我的设置如下:

我当前的.ebextensions文件夹中的nginx.config文件(从本文中获取):

files:
  "/tmp/deployment/config/#etc#nginx#conf.d#00_elastic_beanstalk_proxy.conf" :
    mode: "000755"
    owner: root
    group: root
    content: |
        upstream nodejs {
            server 127.0.0.1:8081;
            keepalive 256;
        }
        server {
            listen 8080;
            set $fixedWWW '';
            set $needRedir 0;
            # nginx does not allow nested if statements
            # check and decide on adding www prefix
            if ($host !~* ^www(.*)) {
                set $fixedWWW 'www.';
                set $needRedir 1;
            }
            # what …
Run Code Online (Sandbox Code Playgroud)

https nginx amazon-web-services amazon-elb amazon-elastic-beanstalk

9
推荐指数
1
解决办法
1987
查看次数

使用merge或rebase维护部署分支

我主持AWS,这意味着我无法使用环境变量来控制我的生产和暂存部署.因此,我被迫使用单独的分支进行部署,并且想知道是否有最佳实践方法来维护它们?

如果我将更改合并到我的生产分支中,则包含我的生产设置的提交将在分支历史记录中丢失,从而使调整这些设置变得更加困难.

但是我已经读过在这种情况下你不应该使用rebase,因为它会使回滚更改变得更加困难.

git deployment merge branch rebase

6
推荐指数
2
解决办法
1377
查看次数

如何为运行 nginx 的 Elastic Beanstalk 将 http 重定向到 https?

我知道关于这个确切的主题有很多 SO 问题。但是,似乎没有一个适用于最新版本的 Elastic Beanstalk / Docker 组合。

我在Docker 中运行Django/Python Web 应用程序,然后将其部署到 Elastic Beanstalk。我希望 http 和 https 处于活动状态,因此我在AWS EB配置控制台中启用了端口80443。这很好用。我的网站可以通过 http 和 https 访问。然而,这真的不是我想要的。我希望端口80 ( http ) 自动转发到端口443 ( https )。

我已经按照 SO 和其他论坛上的每一条建议来调试这个,但我认为那里的信息太旧了。(即,不再有效)。

我找到了 EB 在哪里设置它的服务器(在一个名为 : 的文件中/etc/nginx/sites-enabled/elasticbeanstalk-nginx-docker-proxy.conf),它的内容是:

map $http_upgrade $connection_upgrade {
  default  "upgrade";
  ""       "";
}

server {
  listen 80;
  location / {
    proxy_pass          http://docker;
    proxy_http_version  1.1;
    proxy_set_header    Connection       $connection_upgrade;
    proxy_set_header    Upgrade          $http_upgrade;
    proxy_set_header …
Run Code Online (Sandbox Code Playgroud)

https http nginx docker amazon-elastic-beanstalk

5
推荐指数
1
解决办法
5258
查看次数

使用来自ACM的证书强制在elasticbeanstalk中使用https

我已经配置了可扩展的EB(Elasticbeanstalk)rails(puma)实例.我已通过ACM(亚马逊证书管理器)申请https并将其应用于我的负载均衡器.现在为我的网站启用了HTTPS.但是如何强制重定向到https?我已经尝试了一些在线解决方案,建议通过.ebextensions手动进行nginx配置设置,我不知道从哪里获得ACM的证书?(我假设现在ACM无法做到这一点? ).如何强制HTTPS?

ruby-on-rails nginx ssl-certificate amazon-web-services amazon-elastic-beanstalk

5
推荐指数
1
解决办法
1068
查看次数