/etc/nginx/sites启用/默认
server {
listen 80 default_server;
root /var/www/example;
index index.php;
server_name localhost;
location / {
try_files $uri/ /index.php
}
...
}
这个很好用。我没有在该实例上安装SSL。我希望阻止对我的api的访问(扩展到多个EC2实例),除了来自的调用。我在API控制台(.pem)下创建了一个客户端证书,并将以下内容添加到nginx配置中:
server {
listen 443;
ssl on;
ssl_client_certificate /etc/nginx/ssl/cert.pem;
ssl_trusted_certificate /etc/nginx/ssl/cert.pem;
ssl_verify_client on;
root /var/www/example
index index.php;
server_name localhost;
location / {
try_files $uri /index.php
}
...
}
错误日志显示,在/etc/nginx/site中,没有为"ssl“指令定义任何ssl_certificate -启用/默认:24‘。好吧,很公平。我从nginx文档中尝试了一些其他的技巧,但是没有运气。通过认证并将if-然后添加到nginx配置以只接受来自API的流量如何?怎么做呢?在您看来,在不需要SSL的情况下,做这件事最好的方法是什么?
发布于 2016-07-08 16:08:54
由于您使用客户端证书来保护您的端点,因此需要API网关提供HTTPs协议。没有有效的证书,API网关服务不信任任何集成端点。另外,还有一个关于如何在Nginx中设置客户端证书的非常清晰的文档。你也许也想看看。
https://stackoverflow.com/questions/38267062
复制相似问题