gpt4 book ai didi

amazon-web-services - 在 AWS elasticbeanstalk 中使用 .ebextensions 配置 nginx 配置文件未找到

转载 作者:行者123 更新时间:2023-12-04 14:37:08 25 4
gpt4 key购买 nike

我正在尝试使用自签名 SSL 对部署在 AWS 弹性 beanstalk 上的 springboot webserver 后端启用 https。我按照在线教程和指南使用新的 https-instance.config 更改我的 nginx 配置。

files:
/etc/nginx/conf.d/myconf.conf:
mode: "conf"
owner: root
group: root
content: |
# HTTPS server

server {
listen 443;
server_name localhost;

ssl on;
ssl_certificate /etc/pki/tls/certs/server.crt;
ssl_certificate_key /etc/pki/tls/certs/server.key;
ssl_prefer_server_ciphers on;

location / {
proxy_pass http://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

/etc/pki/tls/certs/server.crt:
mode: "000400"
owner: root
group: root
content: |
-----BEGIN CERTIFICATE-----
mycert
-----END CERTIFICATE-----

/etc/pki/tls/certs/server.key:
mode: "000400"
owner: root
group: root
content: |
-----BEGIN RSA PRIVATE KEY-----
mykey
-----END RSA PRIVATE KEY-----

/opt/elasticbeanstalk/hooks/appdeploy/post/03_restart_nginx.sh:
mode: "000755"
owner: root
group: root
content: |
#!/usr/bin/env bash
sudo service nginx restart

当我 ssh 到我的实例时,我无法在 conf.d 下找到我的 myconf.conf 文件。运行 service nginx status给我
● nginx.service - The nginx HTTP and reverse proxy server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/nginx.service.d
└─nginx.conf
Active: active (running) since Wed 2020-08-26 03:06:34 UTC; 15min ago
Process: 28894 ExecStartPost=/bin/sh -c systemctl show -p MainPID nginx.service | cut -d= -f2 > /var/pids/nginx.pid (code=exited, status=0/SUCCESS)
Process: 28890 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
Process: 28887 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
Process: 28886 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
Main PID: 28893 (nginx)
CGroup: /system.slice/nginx.service
├─28893 nginx: master process /usr/sbin/nginx
└─28897 nginx: worker process

Aug 26 03:06:34 systemd[1]: Starting The nginx HTTP and reverse proxy server...
Aug 26 03:06:34 nginx[28887]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
Aug 26 03:06:34 nginx[28887]: nginx: configuration file /etc/nginx/nginx.conf test is successful
Aug 26 03:06:34 systemd[1]: Started The nginx HTTP and reverse proxy server.
我错过了什么。这是我在 AWS EBS 上的第一个项目。
注意:我正在为 EBS 运行免费层单实例

最佳答案

nginx您尝试使用的设置( /etc/nginx/conf.d/myconf.conf )适用于 亚马逊 Linux 1 .
但是您似乎使用的是亚马逊 Linux 2 (AL2)。因此,您应该使用不同的文件来设置 nginx。对于 AL2,nginx 设置应该在 .platform/nginx/conf.d/ ,不在 .ebextentions 中如docs所示.
因此,您可以拥有以下 .platform/nginx/conf.d/myconfig.conf内容:

server {
listen 443;
server_name localhost;

ssl on;
ssl_certificate /etc/pki/tls/certs/server.crt;
ssl_certificate_key /etc/pki/tls/certs/server.key;
ssl_prefer_server_ciphers on;

location / {
proxy_pass http://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
以上是 一个例子只有配置文件。我无法验证该设置是否真的有效,但您肯定使用了错误的文件夹来设置 AL2 中的 nginx 选项。
我的建议是先尝试通过 ssh 手动使其工作。如果您提供自己的 .platform/nginx/nginx.conf 没有任何效果,您可能会发现您需要覆盖整个 nginx 设置。文件。

关于amazon-web-services - 在 AWS elasticbeanstalk 中使用 .ebextensions 配置 nginx 配置文件未找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63590035/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com