Website error 404 (not found) on internal pages

Hi,
Since update to 1.2.0 version internal pages of my WordPress website are not reacheable (error 404)…

No errors are logged in Nginx error log file…

Any ideas?

Thanks,
Roberto

What is your setup? Could you check if there are any error is access log of the domain.

We didn’t change anything with any Nginx template except all are over written by default.

1 Like

Sounds like customizing the default templates, checkout https://docs.hestiacp.com/admin_docs/server_management.html#how-do-web-templates-work to know how to handle with them.

Nginx, PHP-FPM 7.4 and MySQL

Website’s access log:
ip - - [10/Jul/2020:09:44:53 +0200] “GET /servizi/ HTTP/1.1” 404 1434 “https://domain.com/” “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36”

Didn’t customize any template…

In Hestia logs there’s a message:
09 Jul 2020 06:01:12 added php-fpm backend configuration for domain.com

It has something to do with this issue?

BTW as a few weeks ago the same site was having 404 error (see 13: Permission denied error in website error logfile) I’ve checked again owners and permissions for website folders…

I’ve noticed:

  1. Owners
    Now the “public_html” folder has “user:www-data” ownership
    However both “/home/user/web” and “/home/user/web/domain” have “user:user” ownership
    Is that ok?

  2. Permissions
    I’ve noticed that the changes I’ve made a few weeks ago to solve the issue mentioned in the previous post, have been rolled back… (missing “read” permissions for the “other” section in all above mentioned folders)
    Is that ok?

Thanks

There have been a long time a bug with the permission “dennied” see

or https://github.com/hestiacp/hestiacp/issues/792

This fixed should set the current rights to all access.

What is your current template?

You mean the “Web Template NGINX”?

Web domain is using the “default” one

Should I set user:www-data ownership to both “/home/user/web” and “/home/user/web/domain” as well?

Set ‘wordpress’ as nginx web template

1 Like

Hi @Lupu

Changing template will make changes in Nginx config files?

yes, make a backup-copy of your current config if changed

SOLVED

Finally found the problem… with the update to 1.2.0 version all custom changes I’ve made to Nginx config files have been deleted… particularly the directive: try_files $uri $uri/ /index.php?$args; that is mandatory for WordPress sites…

Hi @Lupu again,

Where can I find a copy of WordPress template?

It should be in the same list as default template only at the bottom.

If not you can download it from https://github.com/hestiacp/hestiacp/tree/main/install/deb/templates/web/nginx/php-fpm but it should be required.

And again:
https://docs.hestiacp.com/admin_docs/server_management.html#how-do-web-templates-work

For custom templates never change the default one :slight_smile:

Hi @eris

I meant a copy of the content of WordPress template, so I can check which are the directives used.

What do you mean by “For custom templates never change the default one”?

What is the best practice to avoid that changes to a template are overwritten by an Hestia update?

Thanks!

Have you read our docs about handling templates which @eris already posted? Should be all written there: Rollback php config after update hestia

Hi @Raphael,

So best practice should be:

  1. Create a copy of a template (for example WordPress) both standard and SSL templates
  2. Setup custom template in Hestia control panel
  3. Rebuild user configuration (v-rebuild-user command)

Is it correct?

Thanks

You may leave out step 3 when domain is changed the new template is loaded by default

3 Likes

Broken link :frowning: