Sentora Support Forums

Full Version: Sentora and php-fpm
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi, it's possible to configure sentora for work with php-fpm proxy? If not, consider to implement it in a next release, because run php with the apache handler its a overhead. 
Thanks!
no as the security model will be broken. Notice in apache 2.4 performance have improved a lot.

M B
(12-18-2015, 12:24 AM)Me.B Wrote: [ -> ]no as the security model will be broken. Notice in apache 2.4 performance have improved a lot.

M B

Yeah, but if i have a website with a lot of requests, apache handler is not the good choice, not in my case. Sentora is the only control panel that i see that use the apache handler, other use usually the fastcgi or fpm technology.
issue is current security model based on shared access. That need a full rewrite so may be in next major release we will no more have problems moving to nginx or others. We can then get back perl/ruby...

Also if you have high traffic nothing prevent you to install varnish on another IP and use it as cache/reverse proxy for all static content while apache will get hits for php files. While most websites remain directly thru apache. Not the best but still can help for custom solution.

M B
(12-21-2015, 06:46 AM)SergiX44 Wrote: [ -> ]
(12-18-2015, 12:24 AM)Me.B Wrote: [ -> ]no as the security model will be broken. Notice in apache 2.4 performance have improved a lot.

M B

Yeah, but if i have a website with a lot of requests, apache handler is not the good choice, not in my case. Sentora is the only control panel that i see that use the apache handler, other use usually the fastcgi or fpm technology.

Starting from version 2.4 apache offers 3 MPM we can choose, it’s depend in what you needs.
  • prefork MPM uses multiple child processes without threading. Each process handles one connection at a time without creating separate threads for each.
  • worker MPM uses several threads per child processes, where each thread handles one connection at a time.
  • event MPM It is similar to the worker MPM in that it also creates multiple threads per child process but with an advantage: it causes KeepAlive or idle connections (while they remain in that state) to be handled by a single thread, thus freeing up memory that can be allocated to other threads. This MPM is not suitable for non-thread-safe modules like mod_php, to use event MPM, PHP-FPM must be used instead.
check the MPM used by your Apache:

Code:
[root@panel ~]# httpd -V Server version: Apache/2.4.6 (CentOS) Server built:   Jul 18 2016 15:30:14 Server's Module Magic Number: 20120211:24 Server loaded:  APR 1.4.8, APR-UTIL 1.5.2 Compiled using: APR 1.4.8, APR-UTIL 1.5.2 Architecture:   64-bit Server MPM:     event   threaded:     yes (fixed thread count)     forked:     yes (variable process count) Server compiled with....  -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=256  -D HTTPD_ROOT="/etc/httpd"  -D SUEXEC_BIN="/usr/sbin/suexec"  -D DEFAULT_PIDLOG="/run/httpd/httpd.pid"  -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"  -D DEFAULT_ERRORLOG="logs/error_log"  -D AP_TYPES_CONFIG_FILE="conf/mime.types"  -D SERVER_CONFIG_FILE="conf/httpd.conf"
To change this, edit /etc/httpd/conf.modules.d/00-mpm.conf
and uncomment the line that loads mpm_event_module
Code:
LoadModule mpm_event_module modules/mod_mpm_event.so
install php-fpm, fcgi,mod_fcgid
Code:
# yum -y install php-fpm mod_fcgid fcgi
change /etc/php-fpm.d/www.conf
Code:
listen = /var/run/php-fpm/socket.sock
change php handler in order to use php-fpm in /etc/httpd/conf.d/php.conf
Code:
<FilesMatch \.php$> #    SetHandler application/x-httpd-php      SetHandler "proxy:unix:/var/run/php-fpm/socket.sock|fcgi://localhost" </FilesMatch>
Restart Service
Code:
# systemctl start php-fpm.service # systemctl enable php-fpm.service # systemctl restart httpd.service

go to your phpinfo();

[attachment=486]
in any case, on the off chance that I have a site with a great deal of solicitations, apache handler isn't the acceptable decision, not for my situation. Sentora is the main control board that I see that utilization the apache handler, other use ordinarily the fastcgi or fpm innovation.
(04-17-2020, 12:39 AM)emmarudd222@gmail.com Wrote: [ -> ]in any case, on the off chance that I have a site with a great deal of solicitations, apache handler isn't the acceptable decision, not for my situation. Sentora is the main control board that I see that utilization the apache handler, other use ordinarily the fastcgi or fpm innovation.

Sentora is testing a BETA version of a PHP 7.x w/PHP-FPM version. We are very close to having a production version available soon. Thank you for your support. :-)