• Please be aware: Kaspersky Anti-Virus has been deprecated
    With the upgrade to Plesk Obsidian 18.0.64, "Kaspersky Anti-Virus for Servers" will be automatically removed from the servers it is installed on. We recommend that you migrate to Sophos Anti-Virus for Servers.
  • The Horde webmail has been deprecated. Its complete removal is scheduled for April 2025. For details and recommended actions, see the Feature and Deprecation Plan.
  • We’re working on enhancing the Monitoring feature in Plesk, and we could really use your expertise! If you’re open to sharing your experiences with server and website monitoring or providing feedback, we’d love to have a one-hour online meeting with you.

Issue I'm giving up!

WhiteTiger

Basic Pleskian
Okay, I'm giving up!
Our work has been stopped for too long!
We deactivate Nginx and we continue with the old configurations, in only Apache.
In September we will decide whether to resume with Nginx or switch to another management platform and also close with Plesk.

Thank you for your attention and patience.
 
Okay, I'm giving up!
Our work has been stopped for too long!
We deactivate Nginx and we continue with the old configurations, in only Apache.
In September we will decide whether to resume with Nginx or switch to another management platform and also close with Plesk.

Thank you for your attention and patience.

What is your issue with Nginx ? Plesk architecture with Apache + Nginx make almost all configuration easier with the ability to use additionals directives for static files with Nginx, and .htaccess support. It require only to take the time to read the plesk documentation for linux to understand how requests are processed with Apache + Nginx.
I have already setup Magento 2.1, WordPress Multi-site, Prestashop or other CMS with advanced cache configuration without having to make modifications on vhost templates or Plesk packages.
 
Sorry, no controversy, but I can not accept another invitation to read the documentation!
I read all the documentation, advanced and not.
I did not find a single row that could help me.
I've read wrong? It may be, but I do not understand why in this forum I can not have more precise information on what to look for and where to look for.

If I ask a policeman, "Excuse me, I'm looking for a church," I'm not pretending to bring me to the church with his car, but he cannot tell me "buy a map." I expect him to say "go down this road and the church is in a street on the right".

In other words, I do not expect the solution, but at least one trace of the right approach and best practice.
  • Each configuration file is managed automatically and can not be edited.
  • The vhost_nginx.conf file generates errors.
  • The file /var/www/vhosts/system/DOMAIN/conf/nginx.conf is always empty and I do not understand which Plesk panel should change it.
  • The /etc/nginx/nginx.conf file handles only the http section and covers all domains. Insert here a static path with a map directive creates a conflict with all domains that must use the same variable, such as two WP domains.
  • In /etc/nginx/plesk.conf.d/ip_default/*.conf there is a link to the domain's nginx_ip_default.conf file. Perhaps it is in this folder that I have to create a custom configuration file, but in the documentation I did not find any hints of this type, neither how to avoid conflicts with the directives contained in the file generated automatically.
  • To think that I have to modify the template in PHP just to handle a rewrite I find it a ridiculous thing.
In any case, a "customer" can not access system folders, but only those of his subscription.
Nevertheless, he will want to have control of his applications without being obliged to ask SysAdmin to modify system parameters.

I'm stuck for weeks on WP's initial installation, with rewrite suggested at the end of the installation.
I'm afraid to think what will happen with a more complex configuration.
 
Last edited:
Sorry, no controversy, but I can not accept another invitation to read the documentation!
I read all the documentation, advanced and not.
I did not find a single row that could help me.
I've read wrong? It may be, but I do not understand why in this forum I can not have more precise information on what to look for and where to look for.

If I ask a policeman, "Excuse me, I'm looking for a church," I'm not pretending to bring me to the church with his car, but he cannot tell me "buy a map." I expect him to say "go down this road and the church is in a street on the right".

In other words, I do not expect the solution, but at least one trace of the right approach and best practice.
  • Each configuration file is managed automatically and can not be edited.
  • The vhost_nginx.conf file generates errors.
  • The file /var/www/vhosts/system/DOMAIN/conf/nginx.conf is always empty and I do not understand which Plesk panel should change it.
  • The /etc/nginx/nginx.conf file handles only the http section and covers all domains. Insert here a static path with a map directive creates a conflict with all domains that must use the same variable, such as two WP domains.
  • In /etc/nginx/plesk.conf.d/ip_default/*.conf there is a link to the domain's nginx_ip_default.conf file. Perhaps it is in this folder that I have to create a custom configuration file, but in the documentation I did not find any hints of this type, neither how to avoid conflicts with the directives contained in the file generated automatically.
  • To think that I have to modify the template in PHP just to handle a rewrite I find it a ridiculous thing.
In any case, a "customer" can not access system folders, but only those of his subscription.
Nevertheless, he will want to have control of his applications without being obliged to ask SysAdmin to modify system parameters.

I'm stuck for weeks on WP's initial installation, with rewrite suggested at the end of the installation.
I'm afraid to think what will happen with a more complex configuration.

Hello @WhiteTiger ,
In my opinion, that's the same with all control panels or applications.
Plesk Onyx use Apache + Nginx by default to provide an excellent compromise between performances, ease of use and stability.
As soon as you try to use Nginx or Apache only, you have to understand and to customize yourself everything . But for example, with Nginx only, here the additional directives for WordPress you can add directly from Plesk : WordPress Additionals directives for Nginx only with Plesk onyx · GitHub

Is it fully optimized ? No. "If" statements are to avoid with Nginx. But it doesn't require to customize vhosts configuration.

About performances, you can easily tweak Plesk with a fresh install :
- MariaDB 10.2
- VPS Optimized mode
- nginx.conf settings (worker_processes, tcp_nopush, nodelay etc...)
- php settings (opcache)
- memcached or redis cache for WP

Then , you should not need to use Nginx only to have a blazing fast WordPress instance
 
Thank you for the answer, but I did not understand your suggestion.
I am using Nginx with PHP-FPM managed by Nginx and I want to continue in this way.
 
Thank you for the answer, but I did not understand your suggestion.
I am using Nginx with PHP-FPM managed by Nginx and I want to continue in this way.
I have listed some solutions to make wordpress loading blazing fast, without using a custom Plesk configuration with Nginx-only. This feature provide the ability to use another configuration than Plesk default (Apache + Nginx) but it doesn't mean it will be easy to setup WP with Nginx.
Plesk is the only control panel to give you the choice, and the ability to customize the web server settings like that. It's already more than other solutions available.
 
I'm working with Plesk since February and I've always worked with Nginx + Apache and FPM managed from Nginx.
For three months I thought I was working with Nginx, but instead I worked with Apache alone because there was a Plesk bug. When I noticed this and reactivated Nginx, everything stopped working because the configurations I was using were incorrect.

In recent days I read a book on Nginx and I'm reading a second now.
The problem is always how to bring the Nginx directives into Plesk that has all locked configuration files.
I was given Friday as the ultimate goal. If I can not, then I turn everything off!
 
I'm working with Plesk since February and I've always worked with Nginx + Apache and FPM managed from Nginx.
For three months I thought I was working with Nginx, but instead I worked with Apache alone because there was a Plesk bug. When I noticed this and reactivated Nginx, everything stopped working because the configurations I was using were incorrect.

In recent days I read a book on Nginx and I'm reading a second now.
The problem is always how to bring the Nginx directives into Plesk that has all locked configuration files.
I was given Friday as the ultimate goal. If I can not, then I turn everything off!

Can you explain the reason to choose FPM managed by Nginx ?

Because it remove .htaccess support, and Nginx doesn't act as a reverse-proxy with cache for Apache anymore. I'm even wondering what is the job of Apache in this configuration.
When very high-performance is required, I do not use Plesk, a custom setup with Nginx is easier to configure than trying to customize Plesk .

For all other WordPress websites without very-high traffic where High-availability is required, Plesk Onyx with php-fpm managed by Apache, and Nginx as reverse-proxy with cache for static assets is enough, and make my job easier .
 
Can you explain the reason to choose FPM managed by Nginx ?

I use FPM served by Nginx because I was suggested as the best configuration for Nginx performance and why I should not have used htaccess, but only one configuration file for Nginx.

In any case, also with FPM served by Apache I always get 404 errors (reported by Nginx).
The only way to avoid errors is to disable the Nginx service, which means for all domains even where Nginx problems are not there.

In this VPS there are two Joomla and a WP application that at the moment do not seem to have any problems.
Now, I have to manage other multiple WP domains: a domain for one company and one for each of its brands.
So I created a multisite WP with subdomains mapped.

All WP domains are still configured with a standard installation.
The permalink of all domains are configured as /% postname% /% post_id% /
There are no active plugins, except Akismed and Nginx-helper.
The theme is also the standard one.

I tried with the htaccess suggested by WP at the end of the network installation.
So this is the htaccess in the home folder of the domain.
Code:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]

Now in Plesk I have:
  • PHP 7.1.7
  • FPM served by Apache
  • Proxy mode
  • Smart static files processing
  • No Additional Nginx Directives
I see:
  • correctly the Home Page of Holding-Domain.tld and of Brand1.tld;
  • correctlythe Hello Page of Holding-Domain.tld
  • But I still see the Error 400 (by Nginx).
 
I use FPM served by Nginx because I was suggested as the best configuration for Nginx performance and why I should not have used htaccess, but only one configuration file for Nginx.

In any case, also with FPM served by Apache I always get 404 errors (reported by Nginx).
The only way to avoid errors is to disable the Nginx service, which means for all domains even where Nginx problems are not there.

In this VPS there are two Joomla and a WP application that at the moment do not seem to have any problems.
Now, I have to manage other multiple WP domains: a domain for one company and one for each of its brands.
So I created a multisite WP with subdomains mapped.

All WP domains are still configured with a standard installation.
The permalink of all domains are configured as /% postname% /% post_id% /
There are no active plugins, except Akismed and Nginx-helper.
The theme is also the standard one.

I tried with the htaccess suggested by WP at the end of the network installation.
So this is the htaccess in the home folder of the domain.
Code:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]

Now in Plesk I have:
  • PHP 7.1.7
  • FPM served by Apache
  • Proxy mode
  • Smart static files processing
  • No Additional Nginx Directives
I see:
  • correctly the Home Page of Holding-Domain.tld and of Brand1.tld;
  • correctlythe Hello Page of Holding-Domain.tld
  • But I still see the Error 400 (by Nginx).

It's so painful to use WP MU , not only with Plesk. Just try to split them in individual instances, it will be easier to manage with the WordPress toolkit than with WP MU.
 
It's so painful to use WP MU , not only with Plesk. Just try to split them in individual instances, it will be easier to manage with the WordPress toolkit than with WP MU.
I've already used WPMU many times without problems and even here if i turn off the Nginx service WPMU works. So the problem is in the Nginx configuration.

I'm newbie with Nginx and Plesk and some things I still do not understand.
Why did you say in another post that with Nginx served by FPM I no longer have the reverse proxy?
I thought that to disable it I had to use the check box in Nginx Settings.

And then, with FPM served by Apache, why should rewrite directives be entered for Nginx anyway if htaccess is used?
 
Back
Top