summaryrefslogtreecommitdiffstats
path: root/etc/rc.php_ini_setup
blob: e3d832f6d823a030f242b2d35e3e651cfc79cac3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#!/bin/sh

# Set our operating platform
PLATFORM=`cat /etc/platform`
EXTENSIONSDIR="/usr/local/lib/php/20060613/"

PHPMODULES="apc \
	bcmath \
	bz2 \
	ctype \
	curl \
	date \
	gettext \
	ldap \
	libxml \
	mbstring \
	mhash \
	mysql \
	pcntl \
	pcre \
	posix \
	readline \
	Reflection \
	session \
	shmop \
	standard \
	sysvmsg \
	sysvsem \
	sysvshm \
	sqlite \
	tokenizer \ 
	uploadprogress \
	xml \
	zlib"

LOADED_MODULES=`php -m | grep -v "\["`

# Populate a dummy php.ini to avoid
# the file being clobbered and the firewall
# not being able to boot back up.
cat >/usr/local/lib/php.ini <<EOF
; File generated from /etc/rc.php_ini_setup
output_buffering = "0"
expose_php = Off
implicit_flush = true
magic_quotes_gpc = Off
max_execution_time = 99999999
max_input_time = 99999999
register_argc_argv = On
file_uploads = On
upload_tmp_dir = /tmp
upload_max_filesize = 100M
post_max_size = 100M
html_errors = Off
zlib.output_compression = On
zlib.output_compression_level = 1
include_path = ".:/etc/inc:/usr/local/www:/usr/local/captiveportal:/usr/local/pkg"
uploadprogress.file.filename_template = /tmp/uploadprogress_%s.txt
extension_dir=${EXTENSIONSDIR}

; Extensions
EOF

# Loop through and generate modules to load.
# Take into account modules built into php.
for EXT in $PHPMODULES; do
	SHOULDADD="true"
	for LM in $LOADED_MODULES; do
		if [ "$EXT" = "$LM" ]; then
			SHOULDADD="false"
		fi
	done
	if [ "$SHOULDADD" = "true" ]; then
		if [ -f "${EXTENSIONSDIR}/${EXT}.so" ]; then
			echo "extension=${EXT}.so" >> /usr/local/lib/php.ini
		else
			echo ">>> WARNING!  Could not locate ${EXTENSIONSDIR}/${EXT}.so"
			echo ">>> WARNING!  Could not locate ${EXTENSIONSDIR}/${EXT}.so <<< " | logger -p daemon.info -i -t rc.php_ini_setup
		fi
	fi
done

RAM=`sysctl hw.realmem | awk '{print $2/1000000}' | awk -F '.' '{print $1}'`
export RAM
if [  $RAM -gt 96 ]; then

	cat >>/usr/local/lib/php.ini <<EOF

; APC Settings
apc.enabled="1"
apc.enable_cli="1"
apc.shm_size="25"

EOF

fi

cp /usr/local/lib/php.ini /usr/local/etc/php.ini
OpenPOWER on IntegriCloud