Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


fortgeschrittene:apache-php

Dies ist eine alte Version des Dokuments!


Apache httpd mit PHP

php-cgi

nicht empfohlen

Pakete Debian 8: apache2 php5-cgi

a2enmod cgi
a2enconf serve-cgi-bin
/tmp/insecure.ini
# do not use this in production, see
# http://php.net/manual/de/ini.core.php#ini.cgi.force-redirect
cgi.force_redirect = 0
/usr/lib/cgi-bin/phpinfo.php
#!/bin/sh
# just because something works doesn't mean it's a good idea ...
exec /usr/bin/php-cgi -c /tmp/insecure.ini
<?php
# do not use me in production
  phpinfo();
  #phpinfo(INFO_MODULES);
?>

php-fcgi minimal

Pakete Debian 8: apache2 php5-cgi libapache2-mod-fcgid

a2dismod cgi
a2disconf serve-cgi-bin
a2enmod fcgid
/etc/apache2/conf-available/php-fcgi.conf
# Context - server config
FcgidMaxProcesses 150
# Otherwise php output shall be buffered
FcgidOutputBufferSize 0
 
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
  AddHandler fcgid-script .php # may confict with other .php handlers
  #FcgidWrapper /usr/local/bin/php-fcgid-wrapper
  FcgidWrapper /usr/bin/php-cgi
  AllowOverride None
  Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
  Require all granted
</Directory>
a2enconf php-fcgi
apachectl configtest
apachectl graceful
/usr/lib/cgi-bin/phpinfo.php
<?php
# do not use me in production
  phpinfo();
  phpinfo(INFO_MODULES);
?>
wget -nv -O - http://localhost/cgi-bin/phpinfo.php
service apache2 status

php-fcgi mit vhost und suexec

TODO: noch nicht fertig Voraussetzung: apache mit vhost

apt-get install apache2-suexec php5-cgi libapache2-mod-fcgid
a2enmod fcgid
a2enmod suexec
/etc/apache2/conf-available/php-fcgi.conf
# Context - server config
FcgidMaxProcesses 150
# Otherwise php output shall be buffered
FcgidOutputBufferSize 0
a2enconf php-fcgi
mkdir -p /srv/phpinfo.linuxhotel.de/cgi-bin
useradd -r -d /srv/phpinfo.linuxhotel.de/cgi-bin/ -s /bin/false phpinfo

1)

/var/www/php-cgi
#!/bin/sh
export PHPRC="/etc/php5/cgi"
exec /usr/bin/php-cgi
chmod +x /var/www/php-cgi

<file txt

/srv/phpinfo.linuxhotel.de/cgi-bin/phpinfo.fcgi
<?php
# do not use me in production
phpinfo();
?>
## chmod +x /srv/phpinfo.linuxhotel.de/cgi-bin/phpinfo.fcgi
1)
php-cgi needs to be under suexec doc_root, see
/usr/lib/apache2/suexec-pristine -V
fortgeschrittene/apache-php.1482108473.txt.gz · Zuletzt geändert: 2016/12/19 00:47 von ingo_wichmann