【问题标题】:Max size of "name" attribute when posting?发布时“名称”属性的最大大小?
【发布时间】:2015-08-12 13:44:09
【问题描述】:

我使用的 Drupal 网络表单可以在我的本地机器上运行,但不能在服务器上运行。大多数字段都有效,但对于其中大约 4 个字段,Drupal 抱怨说它们没有被填满,尽管它们是。

我能看到的唯一一个对于失败来说看起来很奇怪的是,“name”属性很大。所以我的理论是,运行 Centos 6(带有 cPanel 的 apache)的服务器对发布到服务器的变量的大小有某种限制。

查看google生成的代码:

<textarea required="required" id="edit-submitted-are-you-currently-offering-service-and-support-for-any-products-you-sell" name="submitted[are_you_currently_offering_service_and_support_for_any_products_you_sell]" cols="60" rows="5" class="form-textarea required error"></textarea>

所以我的理论是这部分太长了:

name="submitted[are_you_currently_offering_service_and_support_for_any_products_you_sell]"

知道是否有这样的限制吗?或者可能是其他什么原因造成的?

更新

当我缩短字段时,它会起作用。所以有一些东西阻碍了这一点。我查过了:

  • Apache 日志
  • 错误日志
  • mod_security 日志

没有想法,但会继续寻找。

【问题讨论】:

  • 您是否尝试使用较短的名称重命名字段以确认您的理论?
  • 这是 GET 还是 POST 提交? GET 请求肯定有总请求大小的限制。
  • 这是一个帖子。是的,我可以尝试重命名这些字段,但如果我可以通过增加这些变量的允许最大大小一次性为每个人修复它,我不想浏览网站上的所有表单。但是,让我尝试重命名一个变量,看看我得到了什么......即。证实我的理论。
  • 确认...使字段更短可以在服务器上工作。

标签: php apache drupal-7


【解决方案1】:

我需要将它添加到 php.ini:

[suhosin]
suhosin.get.max_name_length = 130 
suhosin.post.max_name_length = 130 
suhosin.request.max_varname_length = 130

Drupal 允许最大大小为 128 个字符,因此从技术上讲,应该使用 128 个而不是 30 个,但我添加了一个额外的缓冲区,以防万一。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-08-16
    • 2017-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-24
    • 1970-01-01
    相关资源
    最近更新 更多