KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="fpm apache2"
-RDEPEND="app-admin/eselect"
+# The "DirectoryIndex" line in 70_mod_php5.conf requires mod_dir.
+RDEPEND="app-admin/eselect
+ apache2? ( www-servers/apache[apache2_modules_dir] )"
S="${WORKDIR}"
want_apache
src_install() {
- mv eselect-php-${PV} php.eselect
insinto /usr/share/eselect/modules/
- doins php.eselect
+ newins "eselect-php-${PV}" php.eselect
if use apache2 ; then
insinto "${APACHE_MODULES_CONFDIR#${EPREFIX}}"
fi
if use fpm ; then
- newinitd "${FILESDIR}/php-fpm.init-r2" "php-fpm"
+ newinitd "${FILESDIR}/php-fpm.init-r3" "php-fpm"
systemd_dotmpfilesd "${FILESDIR}/php-fpm.conf"
exeinto /usr/libexec
doexe "${FILESDIR}/php-fpm-launcher"
#!/sbin/openrc-run
extra_started_commands="reload"
+extra_commands="configtest"
set_phpvars() {
PHPSLOT="${SVCNAME#php-fpm-}"
fi
PHP_FPM_CONF="/etc/php/fpm-${PHPSLOT}/php-fpm.conf"
+ PHP_FPM_BIN="/usr/lib/${PHPSLOT}/bin/php-fpm"
}
start() {
ebegin "Starting PHP FastCGI Process Manager"
set_phpvars
start-stop-daemon --start --pidfile "${PHP_FPM_PID}" \
- --exec "/usr/lib/${PHPSLOT}/bin/php-fpm" \
+ --exec "${PHP_FPM_BIN}" \
-- \
--fpm-config "${PHP_FPM_CONF}" \
--pid "${PHP_FPM_PID}"
set_phpvars
start-stop-daemon --signal QUIT \
--stop \
- --exec "/usr/lib/${PHPSLOT}/bin/php-fpm" \
+ --exec "${PHP_FPM_BIN}" \
--pidfile "${PHP_FPM_PID}"
eend $?
}
[ -f "${PHP_FPM_PID}" ] && kill -USR2 $(cat "${PHP_FPM_PID}")
eend $?
}
+
+configtest() {
+ ebegin "Testing PHP FastCGI Process Manager configuration"
+ set_phpvars
+ "${PHP_FPM_BIN}" --fpm-config "${PHP_FPM_CONF}" --test
+ eend $?
+}