Ответы пользователя по тегу WordPress
  • Необходимо перенести сайт Wordpress версии 5.1.1. с хостинга php 5.3 на хостинг с php 7.2. Подходит ли для этой задачи стандартный перенос?

    FoxCloud
    @FoxCloud
    Хостинг и облачные сервисы
    Добрый день,
    Вот основные шаги при переносе сайта по FTP. Посмотрите, все ли действия Вы выполнили.
    1)Перенесите файлы сайта и бд.
    2)Внести изменения в конфигурационные файлы
    3)После того, как вы перенесли файлы сайта, замените все пути(к сайту) в файлах на ваши.
    Например: /home/www/site.com на /var/www/site.com
    4)Замените пути на ваши в файлах БД.
    5)Если вы хотите сменить версию php, тогда обратитесь к разработчику сайта, потому что устаревшая версия влияет на корректность работы ПО (пример: менеджер PHP-пакетов composer) или вам потребуется особая версия для новых скриптов.
    Ответ написан
    Комментировать
  • Как ускорить время работы WP All import?

    FoxCloud
    @FoxCloud
    Хостинг и облачные сервисы
    Здравствуйте!
    Для решения проблемы, рассмотрите варианты ниже.

    1. Установите лимиты на PHP.
    Не смотря на то, что вы уже установили лимиты, следует учитывать факт наличия на сервере нескольких версий PHP.
    PHP версия нативная на сервере может быть одна, а версия для сайта может быть другая.

    Как установить лимиты.
    Способов установки лимитов много. Ниже представлены несколько их них:

    1. Через файл .user.ini в корне сайта.
    2. Через файл .htaccess в корне сайта.
    3. На сервере глобально. Примеры: /etc/php.ini /opt/php73/etc/php.ini
    4. В панели управления в настройках PHP.

    Установите лимиты и проверьте, что они установились.
    Для проверки:
    - Создайте файл в корне сайта php-ver.php
    - Внесите код ниже.
    <?php
    phpinfo()
    - Откройте сайт xn--_-7sbbf2b7bj7b/php-ver.php
    - Проверьте, чтобы лимиты, заданные вами точно установились.

    max_execution_time = 90
    memory_limit = 300M
    post_max_size = 300M
    upload_max_filesize = 300M

    2. Сконфигурируйте лимиты на веб-сервере:
    - Apache сервер:
    Чаще всего в файле /etc/httpd/conf/httpd.conf
    Параметр:
    Timeout 7200 (7200 секунд = 2 часа, установите свое значение).

    - Nginx сервер
    Чаще всего в файле /etc/nginx/nginx.conf !секция http!
    proxy_read_timeout 7200;
    proxy_connect_timeout 300;
    client_body_buffer_size 1024M;

    3. Лимиты mysql
    key_buffer_size = 512M
    max_allowed_packet = 24M
    query_cache_size=1024M
    join_buffer_size=1024M
    tmp_table_size=1024M
    max_heap_table_size=1024M

    Лимиты очень завышены, но вам должно хватить. Поэксперементируйте с ними.

    Выполните приведенные выше решения и проблема должна решиться.
    Ответ написан
    Комментировать
  • Ошибки: REST API выдал ошибку, Ваш сайт не смог выполнить петлевой запрос на одном из хостингов при одинаковом сайте, как исправить?

    FoxCloud
    @FoxCloud
    Хостинг и облачные сервисы
    Добрый день!

    Чтобы решить проблему проследуйте по пунктам (от более простого к сложному):

    1. Сделайте бэкап файлов сайта и БД текущего состояния сайта.
    2. Убедитесь, что на всех доменах стоит валидный сертификат. Чаще всего на хостингах доступны LetsEncrypt бесплатные сертификаты - выпустите и установите валидные сертификаты. Проверить валидность сертификата на сайте можно на сайте https://www.sslshopper.com/ssl-checker.html
    3. На сайте настройте редирект с HTTP на HTTPS. Это можно сделать в панели управления хостингом в настройках www-домена или через файл .htaccess:

    Пример редиректа №1:
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteCond %{HTTP:X-Forwarded-Proto} !https
    RewriteCond %{HTTP:CF-Visitor} !https
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

    Пример редиректа №2:
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP:X-Forwarded-Proto} =http
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

    Пример редиректа №3:
    RewriteCond %{HTTPS} !=on
    RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

    4. Скачайте плагин "Really Simple SSL" установите и переведите сайт на HTTPS. А также измените ссылки сайта с xn--_-7sbbf2b7bj7b на https://xn--_-7sbbf2b7bj7b - это можно сделать в базе данных (таблица wp_options) или в панели CMS /wp-admin

    Проверьте, не устранена ли ошибка.

    5. В child теме wordpress в файле с кастомными функциями отключите CORS политику.
    Пример как это сделать представлен по ссылке: https://www.coditty.com/code/enable-cors-on-wordpr...

    6. Убедитесь, что у вас не установлены блокировки REST API в плагине безопасности.
    К примеру iThesmes Security имеет опцию блокировку данных запросов.
    Ответ написан
    2 комментария
  • Чем почистить скрипты от вируса?

    FoxCloud
    @FoxCloud
    Хостинг и облачные сервисы
    Добрый день. Вот инструкции, что можно делать в вашем случае.
    Если веб-сайт не работает или работает не как положено, это может следствием активности вредоносных скриптов.
    Чтобы решить проблему с вредоносными вставками и скриптами, следуйте инструкциям (от простых до более сложных):

    Проверьте веб-сайт онлайн https://sitecheck.sucuri.net/. Эта проверка может указать на проблему.
    Если на веб-сайте недавно было установлено дополнительное программное обеспечение (плагины / темы), убедитесь, что источник этого программного обеспечения является надежным.
    Убедитесь, что все плагины и темы, которые в настоящее время используются на сайте, не подвержены риску и не содержат критических уязвимостей.
    Составьте список всех ваших плагинов.
    Перейдите в поиск Google -> Инструменты -> поиск за последние 3 месяца.
    Строка поиска "ИМЯ_ПЛАГИНА критическая уязвимость". Этот поиск поможет вам определить, были ли за последнее время критические уязвимости, которые могли привести к взлому веб-сайтов вашей CMS.

    Войдите в базу данных phpmyadmin или в панель управления сайтом. Проверьте количество пользователей, особенно с правами администратора. Если есть подозрительные пользователи, удалите их.
    Удалите все файлы из корневого каталога и базы данных сайта. Восстановите сайт из резервной копии.
    Смените пароли: на хостинг панель, на панель управления сайта, на базу данных (вам потребуется перенастроить соединение с базой данных в коде сайта).
    Установите плагин безопасности для своей CMS. Для wordpress сайтов установите iThemes Security.
    Пропарсите access логи сайта на POST запросы.
    Свяжитесь с хостинг компанией и попросите помощи в устранении вирусов и устранении уязвимостей. Скорее всего, это будет платная услуга.
    Проверьте сайт на наличие вирусов и очистите его.
    Используйте утилиту ai-bolit от revisium.
    Скачайте ai-bolit и запустите тест. Пример:
    php /root/aibolit/ai-bolit.php \
    --size=900K \
    --mode=2 \
    --path=/var/www/directory_before_website/your_website/ \
    --report=/var/www/directory_before_website/your_website/vir.html \
    Вредоносные скрипты также могут находиться за пределами корневого каталога веб-сайта, поэтому проверка каталога на уровень выше является хорошей практикой. Измените ключ path: --path=/var/www/путь_к_каталогу/ Вы можете открыть отчет по ссылке: your_site.ru/vir.html Просмотрите отчет и очистите сайт от вредоносных вставок.
    Очистите базу данных от вредоносных вставок.
    Вручную проверьте сайт на наличие вредоносного кода и уязвимостей.
    Очистив сайт от вирусов, настройте antishell скрипт.
    Antishell проверяет веб-сайт на наличие изменений в коде и отправляет электронное письмо с отчетом, если какие-либо изменения были сделаны. Используя антиоболочку, можно узнать время инъекции и какие скрипты были взломаны. Имея конкретное время взлома, можно проанализировать access логи; найти IP-адрес злодея и его запросы к веб-сайту.
    Сделайте резервную копию сайта, очищенного от вставок.
    Скачайте antishell.
    Распакуйте архив в корень сайта, чтобы получить следующую структуру: /your_site/antishell/antishell.php
    Настройте antishell.php (настройка интуитивно понятна).
    Сконфигурируйте планировщик cron для запуска скрипта каждые 5 минут:
    php /var/www/directory_before_website/your_website/antishell/antishell.php
    Как только файл(ы) на веб-сайте будут изменены и cron запустит проверку antishell, вам должно прийти письмо.
    Ответ написан
    Комментировать
  • Перенос WP на другой хостинг и домен?

    FoxCloud
    @FoxCloud
    Хостинг и облачные сервисы
    Здравствуйте.
    Для решения вопроса, рассмотрите варианты ниже.

    Вариант №1 - перенос специалистом.
    Если у вас есть сложность с переносом сайта, напишите в тех. поддержку хостинга на который переезжаете.
    Многие хостиг компании предоставляют бесплатный перенос для новых клиентов.

    Вариант №2 - исправление ошибок на сайте специалистом
    Попросите тех поддержку восстановить текущую работу сайта.

    Вариант №3 - перенос своими силами
    Если решились перенести все сами и сейчас столкнулись с ошибкой на сайте (пустая белая страница).

    Простые решения:
    1. В панели управления измените версию PHP, на ту, которая была на прежнем хостинге.
    Попробуйте несколько версий.
    2. Посмотрите расширения для PHP на прежнем хостинге. Убедитесь, что на новом они также установлены.
    3. Убедитесь, что база данных была загружена.
    Зайдите в PHPmyadmin, удалите все таблицы и импортируйте дамп БД снова.
    Убедитесь, что ошибок нет во время импорта.
    4. Убедитесь, что файл .htaccess присутствует в корне сайта.
    Попробуйте его заменить на .htaccess по умолчанию
    5. Убедитесь, что на хостинге есть свободное место.
    6. Убедитесь, что параметры PHP max_execution_time, post_max_size, memory_limit имеют достаточные значения. Сравните с прошлым хостингом. Измените их самостоятельно или попросите тех. поддержку хостинга.

    Посложнее:
    1. Запустите дебаг в файле wp-config.php
    define( 'WP_DEBUG', true )
    Откройте страницу в браузере и посмотрите что выдают ошибки.

    2. Посмотрите логи сайта на хостинге.
    Где-то в файлах на хостинге должны быть логи ошибок.

    Проблем может быть много.
    Выше описаны частые проблемы, которые легко реализовать.
    Если у вас будет доп. информация, пишите, постараемся помочь.
    Ответ написан
    Комментировать
  • Почему полностью не выполняется скрипт добавления товаров?

    FoxCloud
    @FoxCloud
    Хостинг и облачные сервисы
    Возможно срабатывает таймаут выполнения команды, для этого используются следующие директивы max_execution_time (значение по умолчанию обычно 30 секунд), чтоб изменить значение, в начале работы скрипта необходимо добавить следующую строку:

    ini_set('max_execution_time', 600); // тем самым у скрипта будет таймаут выполнения, равный 600 секундам

    Также на выполнение скрипта может влиять выделенный лимит памяти, для этого используется директива memory_limit

    1. PHP, которую вы используете в консоли и PHP которая используется на вашем сайте могут быть разные.
    Для того, чтобы исправить вашу проблему нужно:
    Изменить параметры max_execution_time и memory_limit в большую сторону для версии PHP, на которой работает ваш сайт! Не для консольной версии PHP. Ниже описано как это сделать:

    1. Проверьте текущие параметры max_execution_time и memory_limit. Для этого зайдите в корень сайта. Создайте файл с любым именем, к примеру myinfo.php и внесите туда код:
    <?php
    phpinfo();

    Файл сохраните, и откройте файл в браузере: xn--_-7sbbf2b7bj7b/myinfo.php
    В открывшимся окне найдите значения параметров max_execution_time и memory_limit.

    2. Измените параметры max_execution_time и memory_limit:
    Зависит от платформы где ваш сайт работает. Изменить параметры рекомендуем следующими способами:
    Способ №1 - .user.ini
    - В корне сайта создайте файл .user.ini и впишите параметры нужные вам. Пример:
    max_execution_time=600
    memory_limit=800M
    Обновите страницу xn--_-7sbbf2b7bj7b/myinfo.php чтобы убедиться, что параметры изменились

    Способ №2 - .htaccess
    В файле .htaccess
    - В корне сайта создайте файл .htaccess и впишите параметры нужные вам. Пример:
    php_value max_execution_time 600
    php_value memory_limit 800M
    Обновите страницу xn--_-7sbbf2b7bj7b/myinfo.php чтобы убедиться, что параметры изменились

    Способ №3 - В конфигурации php панели управления
    Наверняка у вас установлена панель управления хостингом.
    В настройках PHP чаще всего можно выставить нужные параметры.

    Если вы столкнулись со сложностями, обратитесь к хостинг компании и попросите поддержки в этом вопросе или указания по смене параметров.
    Ответ написан
    Комментировать