Restored from vesta - installed with multi-php, but no php option?

Hi, ok did fresh install in debian 10 with multi php, can see all versions php installed, restored users, but can not see option to select php version?

I know it should be under the web template option, but it is not?

It is also not in the server>config server>web server options either?

Any ideas?

thanks

After the clean install were the php versions shown corectly? when editing the default web domain

Also share the install options used (long format pls)

1 Like

I did not check before doing restore so cannot say.

bash hst-install.sh -a yes -n yes -w no -o yes -v yes -j no -k yes -m yes -g no -x yes -z yes -c yes -t yes -i no -b no -q no -d yes -f no -y yes -r 4589 -s server.mydomaincom -e [email protected] -p mypasswordhere -l en

I believe is

a, --apache Install Apache [yes|no] default: yes

-n, --nginx Install Nginx [yes|no] default: yes

-w, --phpfpm Install PHP-FPM [yes|no] default: no

-o, --multiphp Install Multi-PHP [yes|no] default: yes

-v, --vsftpd Install Vsftpd [yes|no] default: yes

-j, --proftpd Install ProFTPD [yes|no] default: no

-k, --named Install Bind [yes|no] default: yes

-m, --mysql Install MariaDB [yes|no] default: yes

-g, --postgresql Install PostgreSQL [yes|no] default: no

-x, --exim Install Exim [yes|no] default: yes

-z, --dovecot Install Dovecot [yes|no] default: yes

-c, --clamav Install ClamAV [yes|no] default: yes

-t, --spamassassin Install SpamAssassin [yes|no] default: yes

-i, --iptables Install Iptables [yes|no] default: no

-b, --fail2ban Install Fail2ban [yes|no] default: no

-q, --quota Filesystem Quota [yes|no] default: no

-d, --api Activate API [yes|no] default: yes

-r, --port Change Backend Port default: 4589

-l, --lang Default language default: en

-y, --interactive Interactive install [yes|no] default: yes

-s, --hostname Set hostname server.mydomain.com

-e, --email Set admin [email protected]

-p, --password Set admin my password

Of course I have change the details of port, email etc from what I actually used.

When I edit php.ini via cp it lists all the php version paths at top.

Thanks

Just a quick thought… I never use the short version of install string (like hst-install.sh -a yes -n yes etc). I prefer the long version (like hst-install.sh --nginx yes --apache yes --phpfpm no --multiphp yes) in order to know what I’m doing. Doing it this way, I never had issues.

Could it be there is a bug somewhere in the short version? If the server is still with no important data, could you re-image it and try installing with the long version? I know it’s a long shot, so don’t feel bad if you don’t want to do that.

I would suggest to reinstall the server again as @Felix wrote - then check prior to the restore, if the multiphp part is working properly - usualy this is not needed, but as you got trouble here, this would be an important check.

Let us know, if it worked properly.

1 Like

Hi, I have nether the time or the inclination to reinstall the server again or deal with additional down time of server.

I may try it in a VM and see if restore affects multiple php selection option.

I used the install script generation at
https://gabizz.github.io/hestiacp-scriptline-generator/
Maybe this could should have option for using long version of options!

Also a console command to change php version per domain?

Thanks

Great news, but a bit late for me

Ok, not sure if this related to my issue with not being able to choose php version, but whenever i install a php module, or do an update i get the following errors:

NOTICE: Not enabling PHP 7.4 FPM by default.
NOTICE: To enable PHP 7.4 FPM in Apache2 do:
NOTICE: a2enmod proxy_fcgi setenvif
NOTICE: a2enconf php7.4-fpm
NOTICE: You are seeing this message because you have apache2 package installed.
Job for php7.4-fpm.service failed because the control process exited with error code.
See “systemctl status php7.4-fpm.service” and “journalctl -xe” for details.
invoke-rc.d: initscript php7.4-fpm, action “restart” failed.
● php7.4-fpm.service - The PHP 7.4 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.4-fpm.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Wed 2020-05-13 14:17:43 BST; 4ms ago
Docs: man:php-fpm7.4(8)
Process: 10314 ExecStart=/usr/sbin/php-fpm7.4 --nodaemonize --fpm-config /etc/php/7.4/fpm/php-fpm.conf (code=exited, status=78)
Process: 10315 ExecStopPost=/usr/lib/php/php-fpm-socket-helper remove /run/php/php-fpm.sock /etc/php/7.4/fpm/pool.d/www.conf 74 (code=exited, status=0/SUCCESS)
Main PID: 10314 (code=exited, status=78)

May 13 14:17:43 server.mydomain.com systemd[1]: Starting The PHP 7.4 FastCGI Process Manager…
May 13 14:17:43 server.mydomain.com php-fpm7.4[10314]: [13-May-2020 14:17:43] ERROR: unable to bind listening socket for address ‘127.0.0.1:9973’: Address already in use (98)
May 13 14:17:43 server.mydomain.com php-fpm7.4[10314]: [13-May-2020 14:17:43] ERROR: FPM initialization failed
May 13 14:17:43 server.mydomain.com systemd[1]: php7.4-fpm.service: Main process exited, code=exited, status=78/CONFIG
May 13 14:17:43 server.mydomain.com systemd[1]: php7.4-fpm.service: Failed with result ‘exit-code’.
May 13 14:17:43 server.mydomain.com systemd[1]: Failed to start The PHP 7.4 FastCGI Process Manager.
dpkg: error processing package php7.4-fpm (–configure):
installed php7.4-fpm package post-installation script subprocess returned error exit status 1

Port 9973 comes from dummy.conf file inside of php fpm conf.d folder, it contains the wrong port number, 9973 is for 7.3, 7.4 usualy takes 9974. Looks like you manualy ajusted something on the system or moved config files around.

I can’t seem to find any php files using the incorrect port number?

grep -iRl “9973” /etc/
grep: /etc/alternatives/php-fpm.sock: No such file or directory
/etc/php/7.3/fpm/pool.d/dummy.conf

grep -iRl “9974” /etc/
grep: /etc/alternatives/php-fpm.sock: No such file or directory
/etc/php/7.4/fpm/pool.d/dummy.conf

thanks

cat /etc/php/7.4/fpm/pool.d/dummy.conf
; origin-src: deb/php-fpm/dummy.conf

[www]
listen = 127.0.0.1:9974
listen.allowed_clients = 127.0.0.1

user = www-data
group = www-data

pm = ondemand
pm.max_children = 4
pm.max_requests = 4000
pm.process_idle_timeout = 10s

ls /etc/php/7.4/fpm/conf.d/
10-mysqlnd.ini 20-apcu.ini 20-ctype.ini 20-ffi.ini 20-gettext.ini 20-imap.ini 20-mbstring.ini 20-posix.ini 20-shmop.ini 20-ssh2.ini 20-tidy.ini 20-xsl.ini
10-opcache.ini 20-bcmath.ini 20-curl.ini 20-fileinfo.ini 20-iconv.ini 20-intl.ini 20-mysqli.ini 20-pspell.ini 20-simplexml.ini 20-sysvmsg.ini 20-tokenizer.ini 20-zip.ini
10-pdo.ini 20-bz2.ini 20-dom.ini 20-ftp.ini 20-igbinary.ini 20-json.ini 20-pdo_mysql.ini 20-readline.ini 20-soap.ini 20-sysvsem.ini 20-xmlreader.ini 25-apcu_bc.ini
15-xml.ini 20-calendar.ini 20-exif.ini 20-gd.ini 20-imagick.ini 20-ldap.ini 20-phar.ini 20-redis.ini 20-sockets.ini 20-sysvshm.ini 20-xmlwriter.ini

Ok all sorted, it was indeed due to incorrect /etc/php/7.4/fpm/php-fpm.conf, i checked my notes and i had accidently deleted this file and replaced it with /etc/php/7.3/fpm/php-fpm.conf without editing the file to update content ref to 7.4.

sorry my bad

1 Like