【发布时间】:2013-05-30 15:20:02
【问题描述】:
我使用亚马逊 EC2 实例。 我遇到了 PHP 上传目录的问题,我在 error_log 上收到了这条消息:
[Mon May 27 21:25:26 2013] [error] [client xxx.96.169.198] Can't find a temporary directory: Internal error [500, #20014]
[Mon May 27 21:26:13 2013] [error] [client xxx.96.169.198] The state report gatherer could not be created. [500, #20014]
所以我想通过尝试将 php.ini 文件上的“upload_tmp_dir”设置为“/opt/phptmp/”来修复它。 (此目录存在,我已将其 chmod 为 777)
我已经搜索了所有的 php.ini 文件
[mybox@mybox /]# find -name php.ini
./etc/php.ini
而且只有 1 个。
我编辑了upload_tmp_dir值并上传了修改后的php.ini,停止httpd,然后启动它。
但它似乎仍然没有工作。我遇到了另一个问题,即写在 php.ini 上的 APC 配置没有被 PHP 正确加载。 例如在 php.ini 上,您可以看到我将“apc.shm_size”设置为“512M” 但是当你访问 APC 信息页面 (apc.php) 时,SHM 的大小只有 32M。
(这是我的 php.ini 中的一些行)
[APC]
apc.enabled = 1
apc.shm_size = 512M
apc.slam_defense = 0
apc.stat=0
apc.enable_cli = 1
apc.user_entries_hint = 16384
从 PHP Info 结果来看,加载的 php.ini 似乎是正确的
Loaded Configuration File ----- /etc/php.ini
有人建议如何解决这个问题?
感谢您的宝贵时间。
【问题讨论】:
-
目录是否存在,php有权限访问吗?
-
如果您提到“/opt/phptmp/”,是的,它存在并且我已将其更改为 777。感谢您的评论。
-
您是否偶然在 fcgi 配置中运行 php?还是作为 apache 模块?
标签: php apache amazon-ec2