I am setting up apache and php on a virtual remote server.
I want to use MPM Worker instead of prefork because I had troubles with ram-useage of prefork in the last month and because I did read that worker is performing faster than prefork.
But I have troubles to get PHP running.
I followed this instructions: http://www.garron.me/blog/ubuntu-lamp-apache2-mpm-worker-and-php-fpm.html but when i call http://www.mydomain.xy/test.php I get this error:
You don't have permission to access /php5-fcgi/test.php on this server.
What must i change to avoid this error?
This is the output of apachectl -V:
Server version: Apache/2.2.22 (Ubuntu)
Server built: Mar 8 2013 15:53:20
Server's Module Magic Number: 20051115:30
Server loaded: APR 1.4.6, APR-Util 1.3.12
Compiled using: APR 1.4.6, APR-Util 1.3.12
Architecture: 64-bit
Server MPM: Worker
threaded: yes (fixed thread count)
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/worker"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=128
-D HTTPD_ROOT="/etc/apache2"
-D SUEXEC_BIN="/usr/lib/apache2/suexec"
-D DEFAULT_PIDLOG="/var/run/apache2.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="mime.types"
-D SERVER_CONFIG_FILE="apache2.conf"
This is apache2.conf:
ServerRoot "/etc/apache2"
LockFile ${APACHE_LOCK_DIR}/accept.lock
PidFile ${APACHE_PID_FILE}
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 10
<IfModule mpm_worker_module>
StartServers 3
MinSpareThreads 25
MaxSpareThreads 100
ThreadLimit 64
ThreadsPerChild 20
MaxClients 300
MaxRequestsPerChild 20000
</IfModule>
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
AccessFileName .htaccess
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy all
</Files>
DefaultType text/html
HostnameLookups Off
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
Include /etc/apache2/httpd.conf
Include /etc/apache2/ports.conf
Include /etc/apache2/conf.d/
Include /etc/apache2/sites-enabled/
LogFormat "%h %l %u %t \"%r\" %>s %b" common
ErrorLog /var/log/apache2/NoVHost_error.log
LogLevel warn
CustomLog /var/log/apache2/NoVHost_access.log common
I added this file to /etc/apache2/conf.d/: /etc/apache2/conf.d/php.conf
<IfModule mod_fastcgi.c>
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /var/run/php5-fpm.sock -pass-header Authorization
</IfModule>
In Sites-enabled i have softlinks to this files:
#000-default.conf
<VirtualHost *:80>
ServerName x.x.xx:80
DocumentRoot /var/www/default
ServerAdmin webmaster@mydomain.xy
<Directory />
Options None
AllowOverride None
Order deny,allow
Deny from all
DirectoryIndex index.html
</Directory>
<Directory /var/www/default/>
Order allow,deny
allow from all
DirectoryIndex index.html
</Directory>
ErrorLog /var/log/apache2/DefaultVHost_error.log
LogLevel warn
CustomLog /var/log/apache2/DefaultVHost_access.log common
</VirtualHost>
and this file:
#899-www.mydomain.xy
<VirtualHost *:80>
ServerName www.mydomain.xy:80
ServerAlias mydomain.xy *.mydomain.xy
DocumentRoot /var/www/www.mydomain.xy/www
ScriptAlias /cgi-bin/ /var/www/www.mydomain.xy/cgi-bin/
ServerAdmin webmaster@mydomain.xy
<Directory />
Options None
AllowOverride None
Order deny,allow
Deny from all
DirectoryIndex index.html
</Directory>
<Directory /var/www/www.mydomain.xy/www/>
Options -ExecCGI +FollowSymLinks -Includes -Indexes -MultiViews
AllowOverride None
Order allow,deny
allow from all
DirectoryIndex index.html
</Directory>
<Directory "/var/www/www.mydomain.xy/cgi-bin">
AllowOverride None
Options +ExecCGI +FollowSymLinks -Includes -Indexes -MultiViews
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/www_shapp_at_error.log
LogLevel warn
CustomLog /var/log/apache2/www_shapp_at_access.log common
</VirtualHost>
Do you need additional infos?
What must i change to avoid this error?