diff --git a/data/packages/default.pkg b/data/packages/default.pkg index d9b15f0f..c19b8762 100644 --- a/data/packages/default.pkg +++ b/data/packages/default.pkg @@ -1,7 +1,7 @@ WEB_DOMAINS='10' WEB_SSL='10' WEB_ALIASES='10' -WEB_TPL='default,phpcgi,unlim' +WEB_TPL='default,phpcgi,unlim,phpfcgid' DATABASES='10' MAIL_DOMAINS='10' MAIL_BOXES='30' diff --git a/data/packages/palegreen.pkg b/data/packages/palegreen.pkg index 6bffc6a7..dab3196e 100644 --- a/data/packages/palegreen.pkg +++ b/data/packages/palegreen.pkg @@ -1,7 +1,7 @@ WEB_DOMAINS='30' WEB_SSL='30' WEB_ALIASES='50' -WEB_TPL='default,phpcgi,unlim' +WEB_TPL='default,phpcgi,unlim,phpfcgid' DATABASES='30' MAIL_DOMAINS='30' MAIL_BOXES='50' diff --git a/data/templates/apache_default.descr b/data/templates/apache_default.descr index 90284fc8..50a93940 100644 --- a/data/templates/apache_default.descr +++ b/data/templates/apache_default.descr @@ -1,3 +1,3 @@ # Default template with basic php module restrictions. -# This is recomended config for basic sites. +# Best performance. Not recomended for shared hosting. PHP='module' CGI='yes' ELOG='no' diff --git a/data/templates/apache_phpcgi.stpl b/data/templates/apache_phpcgi.stpl index f4903b7c..b2d52470 100644 --- a/data/templates/apache_phpcgi.stpl +++ b/data/templates/apache_phpcgi.stpl @@ -15,15 +15,9 @@ AllowOverride AuthConfig FileInfo Indexes Limit SSLRequireSSL Options +Includes -Indexes +ExecCGI - php_admin_value upload_tmp_dir %home%/%user%/tmp - php_admin_value upload_max_filesize 10M - php_admin_value max_execution_time 20 - php_admin_value post_max_size 8M - php_admin_value memory_limit 32M - php_admin_flag mysql.allow_persistent off - php_admin_flag safe_mode off - php_admin_value session.save_path %home%/%user%/tmp - php_admin_value sendmail_path '/usr/sbin/sendmail -t -i -f %email%' + php_admin_flag engine off + Action phpcgi-script /cgi-bin/php + AddHandler phpcgi-script .php AllowOverride All diff --git a/data/templates/apache_phpfcgid.descr b/data/templates/apache_phpfcgid.descr new file mode 100644 index 00000000..bd5be684 --- /dev/null +++ b/data/templates/apache_phpfcgid.descr @@ -0,0 +1,3 @@ +# Template with php as FastCGI for best performance and security. +# (it uses post instal script) +PHP='fcgid' CGI='yes' ELOG='no' diff --git a/data/templates/apache_phpfcgid.sh b/data/templates/apache_phpfcgid.sh new file mode 100755 index 00000000..d044d3f1 --- /dev/null +++ b/data/templates/apache_phpfcgid.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# Adding php wrapper +user="$1" +domain="$2" +ip="$3" +home_dir="$4" +docroot="$5" + +wrapper_script="#!/bin/sh +PHPRC=/etc/ +export PHPRC +export PHP_FCGI_MAX_REQUESTS=1000 +export PHP_FCGI_CHILDREN=8 +exec /usr/bin/php-cgi +" +wrapper_file="$home_dir/$user/web/$domain/cgi-bin/fcgi-starter" + +echo "$wrapper_script" > $wrapper_file +chown $user:$user $wrapper_file +chmod -f 751 $wrapper_file + +exit 0 diff --git a/data/templates/apache_phpfcgid.stpl b/data/templates/apache_phpfcgid.stpl new file mode 100644 index 00000000..a8b13092 --- /dev/null +++ b/data/templates/apache_phpfcgid.stpl @@ -0,0 +1,34 @@ + + + ServerName %domain_idn% + ServerAlias %alias_idn% + ServerAdmin %email% + DocumentRoot %docroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + SuexecUserGroup %user% %group% + CustomLog /var/log/httpd/domains/%domain%.bytes bytes + CustomLog /var/log/httpd/domains/%domain%.log combined + %elog%ErrorLog /var/log/httpd/domains/%domain%.error.log + + AllowOverride AuthConfig FileInfo Indexes Limit + SSLRequireSSL + Options +Includes -Indexes +ExecCGI + php_admin_flag engine off + AddHandler fcgid-script .php + FCGIWrapper %home%/%user%/web/%domain%/cgi-bin/fcgi-starter .php + + + AllowOverride All + + php_admin_value open_basedir %home%/%user%/web:%home%/%user%/tmp:/bin:/usr/bin:/usr/local/bin:/var/www/html:/tmp + SSLEngine on + SSLVerifyClient none + SSLCertificateFile %ssl_cert% + SSLCertificateKeyFile %ssl_key% + + Include %home%/%user%/conf/shttpd.%domain%.conf* + + + diff --git a/data/templates/apache_phpfcgid.tpl b/data/templates/apache_phpfcgid.tpl new file mode 100644 index 00000000..7a634efb --- /dev/null +++ b/data/templates/apache_phpfcgid.tpl @@ -0,0 +1,27 @@ + + + ServerName %domain_idn% + ServerAlias %alias_idn% + ServerAdmin %email% + DocumentRoot %docroot% + ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ + Alias /vstats/ %home%/%user%/web/%domain%/stats/ + Alias /error/ %home%/%user%/web/%domain%/document_errors/ + SuexecUserGroup %user% %group% + CustomLog /var/log/httpd/domains/%domain%.bytes bytes + CustomLog /var/log/httpd/domains/%domain%.log combined + %elog%ErrorLog /var/log/httpd/domains/%domain%.error.log + + AllowOverride AuthConfig FileInfo Indexes Limit + Options +Includes -Indexes +ExecCGI + php_admin_flag engine off + AddHandler fcgid-script .php + FCGIWrapper %home%/%user%/web/%domain%/cgi-bin/fcgi-starter .php + + + AllowOverride All + + Include %home%/%user%/conf/httpd.%domain%.conf* + + +