nginx - client_max_body_size对ssl配置无效

时间:2016-09-15 10:57:43

标签: ssl nginx amazon-ec2

当我设置<?php $search=""; $title = 'My albums'; $this->headTitle($title); $url_order = 'ASC'; if ($order_by == 'title') $url_order = ($order == 'ASC') ? 'DESC' : 'ASC'; elseif ($order_by == 'artist') $url_order = ($order == 'ASC') ? 'DESC' : 'ASC'; if(!empty($search_by)) $search=$search_by; ?> <h1><?php echo $this->escapeHtml($title); ?></h1> <p><a href="<?php echo $this->url('album', array('action'=>'add'));? >">Add new album</a> </p> <?php $form = $this->form; $form->setAttribute(($this->url('album', array('order_by' => $order_by, 'order' => $url_order))),$search); $form->prepare(); echo $this->form()->openTag($form); foreach ($form as $element) : ?> <div class="control-group <?php if ($this->formElementErrors($element)) echo "error" ?>"> <label class="control-label"><?php echo $element->getLabel() ?></label> <div class="controls"> <?php echo $this->formElement($element); if ($this->formElementErrors($element)): ?> <span class="help-inline"><?php echo $this >formElementErrors($element); ?></span> <?php endif; ?> </div> </div> <?php endforeach; echo $this->form()->closeTag(); ?> <table class="table"> <tr> <th><a href="<?php echo $this->url('album', array('order_by' => 'title', 'order' => $url_order), array('query' => $search)); ?>">Title<?php if ($order_by == 'title'): ?><i class="icon-chevron-<?php echo $url_order == 'ASC' ? 'down' : 'up' ?>"></i><?php endif; ?></a></th> <th><a href="<?php echo $this->url('album', array('order_by' => 'artist', 'order' => $url_order),array('query' => $search)); ?>">Artist<?php if ($order_by == 'artist'): ?><i class="icon-chevron-<?php echo $url_order == 'ASC' ? 'down' : 'up' ?>"></i><?php endif; ?></a></th> <th>Action</th> <th>&nbsp;</th> </tr> <?php foreach ($this->paginator as $album) : ?> <tr> <td><?= $this->escapeHtml($album->title) ?></td> <td><?= $this->escapeHtml($album->artist) ?></td> <td> <a href="<?= $this->url('album', ['action' => 'edit', 'id' => $album->id]) ?>">Edit</a> <a href="<?= $this->url('album', ['action' => 'delete', 'id' => $album->id]) ?>">Delete</a> </td> </tr> <?php endforeach; ?> </table> <?= $this->paginationControl( $this->paginator, 'sliding', 'partial/paginator.phtml', array('order_by' => $order_by, 'order' => $order, 'search_by' => $search,'pageAction' => $pageAction)) ?> 没有ssl时,一切正常(接受最多30MB的文件)。但是,当我切换到ssl时,它完全忽略了这个指令。

我的配置如下(/etx/nginx/conf.d/my-sites.com.conf):

client_max_body_size 30m;

我在nginx - client_max_body_size has no effect找到了一些建议,但没有任何效果。我尝试使用不同的nginx版本,我为所有块设置了client_max_body_size:http,服务器,位置但没有任何作用。

我还搜索过它是否是没有结果的nginx错误。

有什么解决方案我可以解决这个问题,还是我被迫使用非ssl连接?欢迎任何建议。

我的配置是:

  • AWS EC2 nano实例
  • 码头工具中的Nginx(最新稳定版 - 1.10.1)
  • 单个IP地址上只有一个虚拟主机

与此问题的区别nginx - client_max_body_size has no effect:此问题与ssl

有关

修改 我在nginx wiki https://trac.nginx.org/nginx/ticket/1076#ticket

中创建了一个问题

1 个答案:

答案 0 :(得分:0)

我终于找到了这个问题的原因。 Nginx工作正常,但我将请求路由到AWS Elastic Beanstalk,后者在内部使用nginx将请求路由到Docker容器内。

因此,错误配置是在AWS Elastic Beanstalk方面。配置AWS解决了问题。