LEOnidUKG#: А цель какая конечная? Ну запрашивают несуществующий файл, получают 404 от WP. В чём смысл то? У вас WP перегружает сервер из-за 404 страницы? Может быть надо облегчить 404 страницу в WP и проблема уйдёт?
Ну обычная 404 страница будет только с текстом "Page not found"
А при обращении к wordpress, идёт поиск страницы, прогрузка всех плагинов. Излишняя нагрузка.
Таких обращений бывает в секунду по 100 штук, когда пытаются wordpress хакнуть.
location /vstats/ { alias /home/admin/web/test.com.com/stats/; include /home/admin/conf/web/test.com.com.auth*; }
location /mega { alias /home/admin/web/mega/;
location ~ ^/mega/(.*\.php)$ { alias /home/admin/web/mega/$1; fastcgi_pass 127.0.0.1:9007; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $request_filename; } location ~* ^/mega/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { alias /home/admin/web/mega/$1; } }
# include /etc/nginx/conf.d/mega.inc*; include /etc/nginx/conf.d/phpmyadmin.inc*; include /etc/nginx/conf.d/phppgadmin.inc*; include /etc/nginx/conf.d/webmail.inc*;
include /home/admin/conf/web/nginx.test.com.com.conf*; }
Возможно надо с проблемой сайта разбираться, почему он поглощает память и что там за скрипты работают. Возможно какая-то кривая доработка просто вешает всё.
Я вот пару дней назад плагин переписывал для форума платный, который занимается подбором "Похожие топики", он был написан с RLIKE запросами. У человека выделенный сервер нагружался от БД когда боты приходили. Я переписал на FULLINDEX запросы и ЧУДО чудное, нагрузка упала в 0 в прямом смысле слова. Теперь клиент не знает чем нагрузить сервер и зачем он взял такой мощный.
У меня аналогичная проблема, нагрузка идёт с одного сайта на wordpress и загрудка всех процессоров бывает на 100% и память уходит и своп растёт. Скорее всего нужно переписывать FULLINDEX.
А цель какая конечная? Ну запрашивают несуществующий файл, получают 404 от WP. В чём смысл то? У вас WP перегружает сервер из-за 404 страницы? Может быть надо облегчить 404 страницу в WP и проблема уйдёт?
Ну обычная 404 страница будет только с текстом "Page not found"
А при обращении к wordpress, идёт поиск страницы, прогрузка всех плагинов. Излишняя нагрузка.
Таких обращений бывает в секунду по 100 штук, когда пытаются wordpress хакнуть.
Предположу что вы ищите try_files
Предположу что ваш конфиг должен быть примерно таким
Спасибо, но не работает.
Вот мой конфиг:
server {
listen 1.1.1.1:80;
server_name test.com.com www.test.com.com;
root /home/admin/web/test.com.com/public_html;
index index.php index.html index.htm;
access_log /var/log/nginx/domains/test.com.com.log combined;
access_log /var/log/nginx/domains/test.com.com.bytes bytes;
error_log /var/log/nginx/domains/test.com.com.error.log error;
# expires 1d;
# add_header Pragma "public";
#fastcgi_read_timeout 300;
#fastcgi_buffers 8 256k;
#fastcgi_buffer_size 128k;
#fastcgi_intercept_errors on;
#include fastcgi_params;
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
# location /xmlrpc.php {
# include /etc/nginx/conf.d/allowip.inc*;
# deny all;
# }
# location /wp-admin/ {
# try_files $uri $uri/ /index.php?$args;
# fastcgi_pass 127.0.0.1:9007;
# fastcgi_index index.php;
# include fastcgi_params;
# fastcgi_param SCRIPT_FILENAME $request_filename;
# location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ {
# expires max;
# }
# include /etc/nginx/conf.d/allowip.inc*;
# deny all;
#}
location /wp-login.php {
include /etc/nginx/conf.d/allowip.inc*;
deny all;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}
fastcgi_pass 127.0.0.1:9007;
fastcgi_index wp-login.php;
include /etc/nginx/fastcgi_params;
}
location / {
include /etc/nginx/blockbyhostname.conf;
add_header X-Robots-Tag "index, follow";
try_files $uri $uri/ /index.php?$args;
rewrite ^/sitemap(-+([a-zA-Z0-9_-]+))?\.xml$ "/index.php?xml_sitemap=params=$2" last;
rewrite ^/sitemap(-+([a-zA-Z0-9_-]+))?\.xml\.gz$ "/index.php?xml_sitemap=params=$2;zip=true" last;
rewrite ^/sitemap(-+([a-zA-Z0-9_-]+))?\.html$ "/index.php?xml_sitemap=params=$2;html=true" last;
rewrite ^/sitemap(-+([a-zA-Z0-9_-]+))?\.html.gz$ "/index.php?xml_sitemap=params=$2;html=true;zip=true" last;
location ~ \.(js|css|png|jpg|jpeg|gif|ico|html|woff|woff2|ttf|svg|eot|otf)$ {
add_header "Access-Control-Allow-Origin" "*";
expires 1M;
access_log off;
add_header Cache-Control "public";
}
location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ {
expires max;
}
location ~ [^/]\.php(/|$) {
# location ~ \wp-login.php$ {
# include /etc/nginx/conf.d/allowip.inc*;
# deny all;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}
if ($allowed_country = no) {
return 444;
}
#if ($http_user_agent = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko)"){
#if ($http_user_agent = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36"){
# return 403;
# }
#if ($http_user_agent = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36"){
# return 403;
# }
# Access deny for bots
# See bots list in the /etc/nginx/nginx.conf
if ($limit_bots = 1) {
return 444;
}
fastcgi_pass 127.0.0.1:9007;
fastcgi_index index.php;
include /etc/nginx/fastcgi_params;
}
}
#}
error_page 403 /error/404.html;
# error_page 404 /error/404.html;
error_page 404 @foobar;
location @foobar {
rewrite .* / permanent;
}
error_page 500 502 503 504 /error/50x.html;
location /error/ {
alias /home/admin/web/test.com.com/document_errors/;
}
location ~* "/\.(htaccess|htpasswd)$" {
deny all;
return 404;
}
location /vstats/ {
alias /home/admin/web/test.com.com/stats/;
include /home/admin/conf/web/test.com.com.auth*;
}
location /mega {
alias /home/admin/web/mega/;
location ~ ^/mega/(.*\.php)$ {
alias /home/admin/web/mega/$1;
fastcgi_pass 127.0.0.1:9007;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $request_filename;
}
location ~* ^/mega/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
alias /home/admin/web/mega/$1;
}
}
# include /etc/nginx/conf.d/mega.inc*;
include /etc/nginx/conf.d/phpmyadmin.inc*;
include /etc/nginx/conf.d/phppgadmin.inc*;
include /etc/nginx/conf.d/webmail.inc*;
include /home/admin/conf/web/nginx.test.com.com.conf*;
}
Возможно надо с проблемой сайта разбираться, почему он поглощает память и что там за скрипты работают. Возможно какая-то кривая доработка просто вешает всё.
Спасибо, буду смотреть.
Ну допустим ваш конфиг... проблема то в чём?
Я вот пару дней назад плагин переписывал для форума платный, который занимается подбором "Похожие топики", он был написан с RLIKE запросами. У человека выделенный сервер нагружался от БД когда боты приходили. Я переписал на FULLINDEX запросы и ЧУДО чудное, нагрузка упала в 0 в прямом смысле слова. Теперь клиент не знает чем нагрузить сервер и зачем он взял такой мощный.
У меня аналогичная проблема, нагрузка идёт с одного сайта на wordpress и загрудка всех процессоров бывает на 100% и память уходит и своп растёт. Скорее всего нужно переписывать FULLINDEX.
Спасибо, как вы писали - я делал. php не отрабатывал в html
Как включить include я гуглил, не смог решить этот вопрос тоже. Я помню раньше решалось всё просто включение параметров в php.ini
Точно, причём я всё остальное делал через GPT chat. :)
Спасибо братья.💪
Я обычно в таких случаях ставлю идентичную версию mysql на тестовой VDS
Останавливаю mysql
Копирую полностью папку /var/lib/mysql
Запускаю mysql
И делаю дамп нужных мне баз
Вот пожалуй лучшее решение.
Всем спасибо.
Попробовать сдампить в sql через ssh на новом сервере:
mysqldump admin_getonline > admin_getonline.sql
После этого перезалить нормально базу через phpmyadmin.
Это пробовал сделать в первую очередь. Пишет:
mysqldump: Got error: 1146: "Table 'admin_getonline.wp_auto_updates' doesn't exist" when using LOCK TABLES