I checked the issues that I could fine.
this one fails ( it uses PHP-FPM)
<Directory /var/www/domain.com>
AllowOverride None
Require all denied
<VirtualHost *:80>
DocumentRoot /var/www/clients/client1/web3/web
ServerName domain.com
ServerAlias www.domain.com
ServerAlias www.domain.com domain.com
ServerAdmin webmaster@domain.com
ErrorLog /var/log/ispconfig/httpd/domain.com/error.log
Alias /error/ "/var/www/domain.com/web/error/"
ErrorDocument 400 /error/400.html
ErrorDocument 401 /error/401.html
ErrorDocument 403 /error/403.html
ErrorDocument 404 /error/404.html
ErrorDocument 405 /error/405.html
ErrorDocument 500 /error/500.html
ErrorDocument 502 /error/502.html
ErrorDocument 503 /error/503.html
<IfModule mod_ssl.c>
</IfModule>
<Directory /var/www/domain.com/web>
# Clear PHP settings of this website
<FilesMatch ".+\.ph(p[345]?|t|tml)$">
SetHandler None
</FilesMatch>
Options +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Directory /var/www/clients/client1/web3/web>
# Clear PHP settings of this website
<FilesMatch ".+\.ph(p[345]?|t|tml)$">
SetHandler None
</FilesMatch>
Options +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# suexec enabled
<IfModule mod_suexec.c>
SuexecUserGroup web3 client1
</IfModule>
<IfModule mod_fastcgi.c>
<Directory /var/www/clients/client1/web3/cgi-bin>
Require all granted
</Directory>
<Directory /var/www/domain.com/web>
<FilesMatch "\.php[345]?$">
SetHandler php5-fcgi
</FilesMatch>
</Directory>
<Directory /var/www/clients/client1/web3/web>
<FilesMatch "\.php[345]?$">
SetHandler php5-fcgi
</FilesMatch>
</Directory>
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /var/www/clients/client1/web3/cgi-bin/php5-fcgi-*-80-domain.com
FastCgiExternalServer /var/www/clients/client1/web3/cgi-bin/php5-fcgi-*-80-domain.com -idle-timeout 300 -socket /var/lib/php5-fpm/web3.sock -pass-header Authorization
</IfModule>
<IfModule mod_proxy_fcgi.c>
ProxyPassMatch ^/(.*\.php[345]?(/.*)?)$ fcgi://127.0.0.1:9012/var/www/clients/client1/web3/web/$1
</IfModule>
# add support for apache mpm_itk
<IfModule mpm_itk_module>
AssignUserId web3 client1
</IfModule>
<IfModule mod_dav_fs.c>
# Do not execute PHP files in webdav directory
<Directory /var/www/clients/client1/web3/webdav>
<ifModule mod_security2.c>
SecRuleRemoveById 960015
SecRuleRemoveById 960032
</ifModule>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler None
</FilesMatch>
</Directory>
DavLockDB /var/www/clients/client1/web3/tmp/DavLock
# DO NOT REMOVE THE COMMENTS!
# IF YOU REMOVE THEM, WEBDAV WILL NOT WORK ANYMORE!
# WEBDAV BEGIN
# WEBDAV END
</IfModule>
Modifying it to the following got rid of the initial "config error" - this uses Fast-CGI
<Directory /var/www/domain.com>
AllowOverride None
Require all denied
<VirtualHost *:80>
DocumentRoot /var/www/domain.com/web
ServerName domain.com
ServerAlias www.domain.com
ServerAlias www.domain.com domain.com
ServerAdmin webmaster@domain.com
ErrorLog /var/log/ispconfig/httpd/domain.com/error.log
Alias /error/ "/var/www/domain.com/web/error/"
ErrorDocument 400 /error/400.html
ErrorDocument 401 /error/401.html
ErrorDocument 403 /error/403.html
ErrorDocument 404 /error/404.html
ErrorDocument 405 /error/405.html
ErrorDocument 500 /error/500.html
ErrorDocument 502 /error/502.html
ErrorDocument 503 /error/503.html
<IfModule mod_ssl.c>
</IfModule>
<Directory /var/www/domain.com/web>
# Clear PHP settings of this website
<FilesMatch ".+\.ph(p[345]?|t|tml)$">
SetHandler None
</FilesMatch>
Options +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Directory /var/www/clients/client1/web3/web>
# Clear PHP settings of this website
<FilesMatch ".+\.ph(p[345]?|t|tml)$">
SetHandler None
</FilesMatch>
Options +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# suexec enabled
<IfModule mod_suexec.c>
SuexecUserGroup web3 client1
</IfModule>
# php as fast-cgi enabled
<IfModule mod_fcgid.c>
IdleTimeout 300
ProcessLifeTime 3600
# MaxProcessCount 1000
DefaultMinClassProcessCount 0
DefaultMaxClassProcessCount 100
IPCConnectTimeout 3
IPCCommTimeout 600
BusyTimeout 3600
</IfModule>
<Directory /var/www/domain.com/web>
<FilesMatch "\.php[345]?$">
SetHandler fcgid-script
</FilesMatch>
FCGIWrapper /var/www/php-fcgi-scripts/web3/.php-fcgi-starter .php
FCGIWrapper /var/www/php-fcgi-scripts/web3/.php-fcgi-starter .php3
FCGIWrapper /var/www/php-fcgi-scripts/web3/.php-fcgi-starter .php4
FCGIWrapper /var/www/php-fcgi-scripts/web3/.php-fcgi-starter .php5
Options +ExecCGI
AllowOverride All
Require all granted
</Directory>
<Directory /var/www/clients/client1/web3/web>
<FilesMatch "\.php[345]?$">
SetHandler fcgid-script
</FilesMatch>
FCGIWrapper /var/www/php-fcgi-scripts/web3/.php-fcgi-starter .php
FCGIWrapper /var/www/php-fcgi-scripts/web3/.php-fcgi-starter .php3
FCGIWrapper /var/www/php-fcgi-scripts/web3/.php-fcgi-starter .php4
FCGIWrapper /var/www/php-fcgi-scripts/web3/.php-fcgi-starter .php5
Options +ExecCGI
AllowOverride All
Require all granted
</Directory>
# add support for apache mpm_itk
<IfModule mpm_itk_module>
AssignUserId web3 client1
</IfModule>
<IfModule mod_dav_fs.c>
# Do not execute PHP files in webdav directory
<Directory /var/www/clients/client1/web3/webdav>
<ifModule mod_security2.c>
SecRuleRemoveById 960015
SecRuleRemoveById 960032
</ifModule>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler None
</FilesMatch>
</Directory>
DavLockDB /var/www/clients/client1/web3/tmp/DavLock
# DO NOT REMOVE THE COMMENTS!
# IF YOU REMOVE THEM, WEBDAV WILL NOT WORK ANYMORE!
# WEBDAV BEGIN
# WEBDAV END
</IfModule>
I think the other is related to a peculiarity of how ISPconfig deals with virtual hosts. They are named differently in /etc/apache2/sites-enabled/ to /etc/apache2/sites-available/