【问题标题】:php upload and internal server errorphp上传和内部服务器错误
【发布时间】:2013-07-14 05:32:19
【问题描述】:

我正在使用带有 php 的 html 表单将数据上传到 mysql。

当我在笔记本电脑 (wamp) 上使用表单时,表单工作正常,但是当我在专用服务器 (ispconfig) 上上传站点时,出现此错误

内部服务器错误
服务器遇到内部错误或配置错误,无法完成您的请求。

我尝试更改 php.ini 中的值

post_max_size  64M
upload_max_filesize 64M
max_input_time 3000
max_execution_time 3000

apache 中的那些也在

memory_limit 96M
post_max_size 64M
upload_max_filesize 64M

但我还是不能上传。

感谢您阅读本文。

【问题讨论】:

  • 为什么您认为问题与这些设置有关?服务器上的错误日志说明了什么?
  • 你能从apache错误日志中得到错误信息吗?
  • 因为我可以上传小于 100kb 且不能更大的小照片。
  • 错误消息“Internal Server Error 服务器遇到内部错误或配置错误,无法完成您的请求。请联系服务器管理员 webmaster@xxxxxxxx.gr 并告知他们错误发生的时间发生了,以及您可能所做的任何可能导致错误的事情。有关此错误的更多信息可能在服务器错误日志中可用。"
  • 您已经发布了这个错误。你能从网络服务器错误日志中得到消息吗?

标签: php post upload ini


【解决方案1】:

你需要在httpd.conf文件中增加FcgidMaxRequestLen

使用类似的东西

FcgidMaxRequestLen 67108864

来自FcgidMaxRequestLen Directive

警告

在 2.3.6 之前,默认为 1GB。早期版本的大多数用户 应该使用这个指令来设置一个更合理的限制。

【讨论】:

  • 你是对的!我在 apache 目录中添加了这个“FcgidMaxRequestLen 2000000”,它可以工作。谢谢!
  • 如果服务器上禁用了 FastCGI 怎么办?我没有启用 FastCGI,但仍然出现内部服务器错误
  • 是的!我增加了upload_max_filesize = 20Mpost_max_size = 80Mmemory_limit = 512M,但仍然无法上传大小为 10.9MB 的文件。我的 FcgidMaxRequestLen8131072,大约 8 MB。增加这个值,一切正常!!谢谢。
【解决方案2】:

请注意,php/ajax 处理脚本中的语法错误可能会报告为“内部服务器错误”。

例如,我使用 Ravishanker Kusuma's jQuery Upload File plugin 并收到此消息。

原来它只是 AJAX 脚本指定的 PHP 处理器文件中我的代码中的一个(未使用的)函数中缺少的 )。上传文件时,会调用此脚本,脚本会在未使用的函数内部中断,这就是它会报告的错误。

FWIW

【讨论】:

    【解决方案3】:

    接受的答案是正确的。更具体地说,您需要在 httpd.conf 文件中添加代码:

    # Work around annoying fcgid limitations
    <IfModule mod_fcgid.c>
      # 20MB should be enough
      MaxRequestLen 20000000
    </IfModule>
    

    您可以在这里查看全文: http://pivica.me/blog/500-internal-server-error-while-uploading-files-bigger-then-100kb-modfcgid-problem

    【讨论】:

      【解决方案4】:

      以上解决方案都不适合我。 对于使用 Plesk Pannel 的 CentOS 用户,请按照以下步骤操作

      在模板中改变这个值

      # grep -ir FcgidMaxRequestLen /usr/local/psa/admin/conf/templates/default/domain/domainVirtualHost.php FcgidMaxRequestLen 16777216

      # sed -i 's/FcgidMaxRequestLen 16777216/FcgidMaxRequestLen 1073741824/g' /usr/local/psa/admin/conf/templates/default/domain/domainVirtualHost.php

      # grep -ir FcgidMaxRequestLen /usr/local/psa/admin/conf/templates/default/domain/domainVirtualHost.php FcgidMaxRequestLen 1073741824

      重建虚拟主机配置。

      # /usr/local/psa/admin/bin/httpdmng --reconfigure-all # /usr/local/psa/admin/bin/httpdmng --reconfigure-server

      https://support.plesk.com/hc/en-us/articles/213955145-Unable-to-upload-large-files-via-PHP-HTTP-request-length-exceeds-MaxRequestLen

      【讨论】:

        猜你喜欢
        • 2012-10-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-03-18
        • 2013-03-24
        • 2013-07-02
        • 2013-07-31
        • 2011-10-23
        相关资源
        最近更新 更多