2013-03-11 74 views
1

我试图提高php.ini(mamp 2.1.2 PHP版本5.4.10)中的upload_max_filesize值。服务器运行在端口80上。我在这里找到了几个安装程序,但没有人真正适用。为什么编辑mamps php.ini没有效果

当我使用phpinfo()函数获取“加载的配置文件”时,我得到路径:/Applications/MAMP/bin/php/php5.4.10/conf/php.ini,但所示的配置形式phpinfo()与我的php.ini中的配置不匹配。

在我的php.ini中upload_max_filesize = 100M phpinfo()告诉我2M。

我编辑了ini之后,我修复了服务器和我的机器。

那么,为什么我不能更改upload_max_filesize?

编辑: 将端口设置为8888后,配置文件加载正确。也许与操作系统的Ap​​ache服务器有冲突?

+0

我已经在MAMP上用PHP 5.4.4测试过它,它在你说的同一条路径上没有问题。您可能想要执行“停止服务器”,然后退出MAMP并检查活动监视器是否有任何php/mysql进程仍在运行。过去我遇到过一些与MAMP运行碰撞的版本有关的问题,它们在MAMP应用程序关闭后并未真正停止或挂起,导致这些错误问题。 – 2013-03-11 17:20:59

+0

不幸的是,这并没有解决我的问题。我重新启动了计算机并且值不会改变。 – crashbus 2013-03-12 08:47:56

+0

这听起来很愚蠢,但它发生在很多有经验的用户身上。 MAMP兑现页面。这可能是你运行的'phpinfo()'文件仍然显示页面的缓存版本。 MASTER的值是否与您的本地值相同? ('phpinfo()'中的两个单独列)。在Safari中,你可以用'ALT + CMD + E'来清空。如果这不起作用;尝试升级到最新的MAMP,否则尝试MAMP论坛。这是一个很奇怪的问题。 – 2013-03-12 09:17:05

回答

-2

尝试编辑/Applications/MAMP/bin/php/php5.4.10/conf/php.ini 并重新启动服务器。

或者试图以编程

ini_set('upload_max_filesize', '100M'); 
+0

您只能在.htaccess中上传ini_set,因为php会在文件碰到php脚本之前拒绝该文件 – Waygood 2013-03-11 17:15:19

+0

http://php.net/manual/en/function.ini-set.php“设置给定值配置选项,配置选项将在脚本执行过程中保留这个新值,并在脚本结尾恢复“ – devBinnooh 2013-03-11 17:16:35

+0

该文件将被拒绝__BEFORE__该脚本执行,所以它将永远不会被设置和使用! http://stackoverflow.com/questions/3694114/php-file-size-limit – Waygood 2013-03-11 17:19:20

1

你也需要编辑设置:post_max_sizememory_limit

的post_max_size整数 集后数据的最大允许的大小。该设置也会影响文件上传。要上传大文件,此值必须大于 upload_max_filesize。如果配置 脚本启用了内存限制,则memory_limit也会影响文件上载。一般来说, memory_limit应该大于post_max_size。当使用整数 时,该值以字节为单位进行测量。速记符号,如本FAQ中的 所述,也可以使用。如果发布数据的大小大于 大于post_max_size,则$ _POST和$ _FILES超全局变量是空的。 这可以通过各种方式进行跟踪,例如,通过将$ _GET 变量传递给处理数据的脚本,即,然后检查是否设置了$ _GET ['processed'] 。

PHP INI核心manual

+0

我提出post_max_size为100M,但继承人与upload_max_filesize相同的效果:更改没有效果(phpinfo显示8M)。我唯一能够成功的就是价值memory_limit(250M)。 – crashbus 2013-03-12 08:08:31

+0

您使用的是哪个版本? MAMP或MAMP Pro? – tttony 2013-03-12 17:41:44

+0

我使用正常的MAMP(不是MAMP Pro) – crashbus 2013-03-13 09:34:48

7

这是因为甲基苯丙胺和甲基苯丙胺PRO每次启动服务时间覆盖php.ini中有一个模板文件。因此,为了使你想要的php.ini改变,你需要改变模板。

在使用OS X上MAMP PRO我的情况下,该模板中发现:

/Applications/MAMP PRO/MAMP PRO.app/Contents/Resources/ 

在此文件夹,你会发现几个php.ini文件版本的PHP的每个版本,提供给你。您需要编辑正在运行的PHP版本的.ini文件。在我的情况下,这是php5.5.10.ini。编辑完成后,重新启动MAMP,新的设置应该生效。

+0

感谢这个信息...我发现这个解决方案对我的问题是完美的。 – iMarkDesigns 2016-05-16 17:15:56

相关问题