PHP max_file_uploadsの設定変更

HTML5を使って、複数ファイルのアップロードをする。

・PHP Version 5.3.3

<form method="post"><input type="file" name="file[]" /></form>

を送信すると、20個以上ポストできない。なぜ。\(^o^)/

調べてみると、php5.2.12からmax_file_uploadsという設定ができたようです。

ini_set
.htaccess

で設定を変更しようとしても無理。なぜ。\(^o^)/

結局php.iniに

max_file_uploads = 100

と追記するとできるようになりました。

apcをyumでインストールした時のエラー

・PHP version 5.3.3
でAPCをyumでインストールした時後に、PHPを実行した時のエラーが

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/apc.so' 
- /usr/lib64/php/modules/apc.so: undefined symbol: php_pcre_exec in Unknown on line 0

だったのでメモ。

apcをyumでインストールしたけどphpをコマンドから実行した時にエラーがでるようになった。
phpinfo()で確認してもAPCが無い!
php.iniにextension=apc.soが無いからかーと思って、php.iniに追記して再起動してphpを実行すると

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/apc.so' 
- /usr/lib64/php/modules/apc.so: undefined symbol: php_pcre_exec in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/apc.so' 
- /usr/lib64/php/modules/apc.so: undefined symbol: php_pcre_exec in Unknown on line 0

2個に増えました!!!!!!!

別のインストール方法ならどうかなーということで、

# yum remove *apc*

で削除。

peclでインストールしてみる

# pecl install apc 
downloading APC-3.1.9.tgz ...
Starting to download APC-3.1.9.tgz (155,540 bytes)
.........................done: 155,540 bytes
54 source files, building
running: phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626
Enable internal debugging in APC [no] :(enter押す)
Enable per request file info about files used from the APC cache [no] :(enter押す)
Enable spin locks (EXPERIMENTAL) [no] :(enter押す)
Enable memory protection (EXPERIMENTAL) [no] :(enter押す)
Enable pthread mutexes (default) [yes] :(enter押す)
Enable pthread read/write locks (EXPERIMENTAL) [no] :(enter押す)
 
・
・
(略)
・
・
 
Build process completed successfully
Installing '/usr/include/php/ext/apc/apc_serializer.h'
Installing '/usr/lib64/php/modules/apc.so'
install ok: channel://pecl.php.net/APC-3.1.9
configuration option "php_ini" is not set to php.ini location
You should add "extension=apc.so" to php.ini

入った!

phpinfo()でも確認できました。
(php.iniにextension=apc.so書いてない人は追記して下さい)

2013年1月21日追記
後日やってみると下記のエラーでインストールできなかった。

running: make
/bin/sh /tmp/pear/temp/pear-build-rootj4HLaQ/APC-3.1.9/libtool --mode=compile gcc  -I. -I/tmp/pear/temp/APC -DPHP_ATOM_INC -I/tmp/pear/temp/pear-build-rootj4HLaQ/APC-3.1.9/include -I/tmp/pear/temp/pear-build-rootj4HLaQ/APC-3.1.9/main -I/tmp/pear/temp/APC -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext  -DHAVE_CONFIG_H  -g -O2   -c /tmp/pear/temp/APC/apc.c -o apc.lo
mkdir .libs
 gcc -I. -I/tmp/pear/temp/APC -DPHP_ATOM_INC -I/tmp/pear/temp/pear-build-rootj4HLaQ/APC-3.1.9/include -I/tmp/pear/temp/pear-build-rootj4HLaQ/APC-3.1.9/main -I/tmp/pear/temp/APC -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -DHAVE_CONFIG_H -g -O2 -c /tmp/pear/temp/APC/apc.c  -fPIC -DPIC -o .libs/apc.o
/tmp/pear/temp/APC/apc.c:42:33: error: apc_php_pcre.h: No such file or directory
/tmp/pear/temp/APC/apc.c:393: error: expected specifier-qualifier-list before 'pcre'
/tmp/pear/temp/APC/apc.c: In function 'apc_regex_compile_array':
/tmp/pear/temp/APC/apc.c:454: error: 'apc_regex' has no member named 'preg'
/tmp/pear/temp/APC/apc.c:454: error: 'apc_regex' has no member named 'preg'
/tmp/pear/temp/APC/apc.c:455: error: 'apc_regex' has no member named 'nreg'
/tmp/pear/temp/APC/apc.c:455: error: 'apc_regex' has no member named 'nreg'
/tmp/pear/temp/APC/apc.c: In function 'apc_regex_match_array':
/tmp/pear/temp/APC/apc.c:487: error: 'apc_regex' has no member named 'preg'
/tmp/pear/temp/APC/apc.c:487: error: 'apc_regex' has no member named 'preg'
/tmp/pear/temp/APC/apc.c:488: error: 'apc_regex' has no member named 'nreg'
/tmp/pear/temp/APC/apc.c:488: error: 'apc_regex' has no member named 'nreg'
make: *** [apc.lo] Error 1
ERROR: `make' failed

yumのupdateをしたりしてやるも解決できず。