Roundcube and phpmyadmin read as text

Hi,

I have issues with Roundcube and Phpmyadmin opening as text instead php. I checked everything and it’s looks like there is no php-fpm process creating. The server has been installed without apache, only nginx and php7.3-fpm. I tested everything, even changed port fastcgi with socket and nothing can fix those two.
Any advice? Never had similar problem in vestacp.

Thank you

Welcome to Hestia Forum @demlasjr

We need to clarify a few points here:

  1. What OS do you use?
  2. Did you reboot OS after the installation?
  3. Do you use stock NGINX configuration or custom one?
  4. How exactly do you access phpMyAdmin / Roundcube?
  5. Does the rest of your php powered websites work properly?

I personally do not use neither of those. Replaced phpMyAdmin with Adminer and Roundcube with RainLoop. That said, I had to make several changes to Hestia configuration. Nevertheless php-fpm socket was working properly. There was no need to change it at all.

2 Likes

Hi @martineliascz,

Thanks for reply.

  1. It’s on Debian Stretch
  2. Yes and many times trying to fix it
  3. Stock NGINX
  4. http://server-domain/phpmyadmin
  5. Yes, everything works, but not phpmyadmin and roundcube, I see every single line of php as text. See attached:

I see, thanks for clarification.

Could you please share screenshot from Roundcube - mail.yourdomain.tld?

@Lupu or @Raphael could help us here, since this issue may be connected to backend hestia-nginx.

Hi again @martineliascz,

After lot of tries I’m finally getting mysql permissions errors in roundcube, trying to change password in database.
Still having problem with phpmyadmin

Hi @demlasjr - thanks for the heads-up!

Please verify that the following line: “fastcgi_pass 127.0.0.1:9000;” is present in the:
“usr/local/hestia/data/templates/mail/nginx/web_system.[s]tpl”.

Please check output of the following command as well:
“netstat -tunlp | grep php-fpm”

You should see this line:
“tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN”

Thank you.

Hello @demlasjr, there seems to be something wrong with your setup.

I just tested HesiaCP on a clean Debian9 and phpmyadmin and roundcube were setup properly.

Steps:

  1. Install debian 9 and login as root
  2. Download Hestia installer
    wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh
  3. Start installer:
    bash hst-install.sh --nginx yes --apache no --phpfpm yes --hostname serverhostname.tld -p PASS --email [email protected]
  4. After install finishes, login to Hestia web and add mail domain. (serverhostname.tld:8083/add/mail/)
  5. test phpmyadmin: http://serverhostname.tld/phpmyadmin
  6. test roundcube: http://webmail.serverhostname.tld/ or http://mail.serverhostname.tld/
2 Likes

Hi @Lupu Lupu,

I don’t want to reinstall everything again, there are like 20 domains already working.
It’s weird and I’m lost, I never had issues or I always could fix issues like this in vesta, but I have no idea how to do it here.

@demlasjr - We do understand the hassle connected therewith.

However reinstall is the easiest and most probably fastest method.
You can always restore previously backed up domains using CLI.

I have just tried it myself and backup/restore is fully working.

If you would rather stick with your current installation - please check things I previously pointed out.

As I told you roundcube is fixed, the problem is with phpmyadmin now and I don’t find any files dedicated to it.

What do you have exactly for a setup? apache2+nginx? nginx+php-fpm?

Basicly the config for pma is set here: https://github.com/hestiacp/hestiacp/blob/0e272acf56819f739f23724ceb389a907bb2ff45/install/hst-install-debian.sh#L1143

Hi guys,
i just see that i have the same issue just with roundcube.
If i visit https://webmail.domain.tld , i get roundcube not working. It’s printing out the php roundcube script:

It’s like if PHP is not triggered for webmail.*

HST 1.1.0 / debian 10

Where i should check to see what’s the issue?

Many thanks.

Basicly this:

Looks like php scripts can not get properly interpreted, that’s why you just get the “source code”, which is also security issue: You could just try to open the config php file, it would print out the db password in cleartext. I would suggest to resolve the issue as soon as possibe and maybe move the roudcube folder temporarly away - probaly same for pma.

Hi @Raphael, everything looks ok from the tip above, line in the script is ok and if i do netstat, i correctly get tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN

So, i don’t know how ti fix the issue since it’s the first time i try to log to roundcube and i just did a standard HST configuration.

How i can recheck and eventually fix the whole hestia parameters? By re upgrading it? It could be useful?

Thanks

And PhpMyAdmin is working fine :slight_smile:

Please post the install commands with full arguments (not the short version)

Where do i can find the “install commands” log?

what arguments for hst-install.sh did you use to install HestiaCp?

ok, thanks.

I ran the install script the first time adding --multiphp yes --postgresql yes
After that, (during last week) i’ve updated a couple of time :

wget https://apt.hestiacp.com/beta/hestia_1.1.0_amd64.deb
dpkg -i hestia_1.1.0_amd64.deb

And it was working fine. The only change i’ve done is to set “no-php” for an unprivileged user’s website.

A note,maybe useful, is that this website is the same domain of hestia :
server name is XYZ.MYDOMAIN.TLD
website i change backend template to “no.php” is MYDOMAIN.TLD

then i roll back to backend template "default* but roundcube was still offline with no php

That’s all :slight_smile:

could you check, if you can restart nginx via command line?
I had an issue where a faulty template lead to nginx not being reloaded after changing the config, because reload tests the new config beforehand. it’s then might be easy to miss, that it did not even honor the changes at all…
when you issue a full restart on nginx it might error out and you can read the log with journaltctl -xe to see what’s causing the problem.