Блог
Делимся с Вами своими знаниями и новостями
#Cruelten » Блог » Web » Перенос MODX на другой хостинг. Ошибка 503 — решение проблемы
09.03.2019

Перенос MODX на другой хостинг задачка еще та. Не все так просто с этой системой управления. Поэтому данная статья посвящена переносу MODX на другой хостинг и решению ошибки 503, которая обычно сопровождает данный перенос и выводит из себя любого специалиста, кто сталкивается с данной задачей. Ниже я публикую подробный пошаговый план, как нужно переносить сайт на MODX на другой хостинг. Кстати, пока не забыл, если Вы еще не перешли со своего глючного MODX на потрясающий WordPress, то подумайте об этом после того, как перенесете свой сайт на MODX. Ибо в WordPress данная задача выполняется в тысячу раз быстрее и проще. А мой специальный раздел по WordPress поможет Вам быстро освоится в этой системе. Итак, поехали.
Перенос MODX на другой хостинг
- Скачиваем все файлы Вашего сайта себе на комп. Тупо берем целую директорию и скачиваем ее себе.
- Делаем полный дамп базы данных сайта и тоже скачиваем ее себе.
- Заходим в папку вашего сайта (то, что Вы скачали), заходим по адресу core/cache — и удаляем все, что там есть.
- Теперь в место куда Вы хотите закачать Ваш сайт вписываем простой php файл и прописываем там <?php phpinfo(); ?>
- Далее открываем этот файл на новом хостинге и ищем там строку — DOCUMENT_ROOT . Копируем адрес корневой Вашего будущего сайта. Теперь делаем следующее.
- Открываем базу данных в любом удобном для Вас редакторе и поиском / заменой ищем и заменяем старый путь на новый. Например, было var/cruelten/cruelten.ru/, а стало www/cruelten.ru/. Производим замену на новый путь.
- Далее, поочередно открываем следующие четыре файла в папке Вашего сайта.
В корне: config.core.php — 1 замена
manager/config.core.php — 1 замена
connectors/config.core.php — 1 замена
core/config/config.core.php — 6 замен - Во всех этих файлах меняем пути. После всего этого дела открываем файл core/config/config.core.php и вписываем туда подключение к Вашей базе данных. Указываем базу данных, пользователя и пароль. Обратите внимание, что там наименование базы надо указывать в двух местах. Будьте предельно внимательны.
- Все… Теперь заливаем все файлы на Ваш сервер и все должно работать.
Ошибка 503 в MODX
Если Вы все сделали правильно, по пунктам, что я расписал выше — Вы не столкнетесь с этой ошибкой. Если же где-то поставили не так, то ошибка обязательно возникнет.
Ошибка 503 в MODX связана с неправильными путями к корню Вашего сайта и осложняется тем, что путь должен быть абсолютный от корня Вашего сервера, поэтому на пункте 4 мы заливаем тестовый файл, чтобы обнаружить реальный правильный путь. Иногда там бывает такое, что Вы бы вообще никогда не догадались, что у Вас такой путь к Вашему сайту. На этом все. Есть вопросы? Пишите в комментариях и на забывайте подписываться в нашу группу на Facebook.
Свяжитесь с нами уже сейчас
- +7 (906) 272-38-19
Telegram / WhatsApp - info@cruelten.ru
- Cruelten
- Cruelten
Вы привыкли видеть здесь форму обратной связи. Ведь так? Ее делают почти все. Но исследуя поведение людей, мы пришли к выводу, что форма совершенно не нужна. В любом случае все сводится к обсуждению Вашего проекта в WhatsApp или Telegram. А зачем нам тратить Ваше время на заполнение различных форм? Поэтому, пишите в Telegram или в WhatsApp.
Делаю перенос сайта modx с денвера на домен. Однако после переноса выдает ошибку 503. Помогите ее решить. Если входить в раздел менеджера, то там просто пустой экран, где ничего нет по сути.
Если говорить про ядро core, то там в логах нет никаких данных, так как в процессе переноса были затерты логи. Изучая .htaccess тоже могу сказать, что там нет никаких запрещенных секций.
![]()
Kromster
13.2k12 золотых знаков41 серебряный знак70 бронзовых знаков
задан 3 ноя 2016 в 5:37
IntegralALIntegralAL
2,6645 золотых знаков57 серебряных знаков101 бронзовый знак
2
503 значит что явно не всё в порядке с путями в конфигах. Вот тебе 4 файла —
/config.core.php
/connectors/config.core.php
/manager/config.core.php
/core/config/config.inc.php
Проверь в них все пути и особенно в последнем — в нём так же содержатся доступы к базе данных — они тоже должны быть изменены. Если всё сделал правильно — то должно заработать.
ответ дан 4 ноя 2016 в 9:43
Для того, чтобы наиболее безболезненно перенести сайт modx на хостинг нужно сделать следующие пункты:
- Очищаем кэш в MODX (Управление -> очистить кэш)
- Теперь идем в Управление -> Завершить все сеансы
- Заходим через файл-менеджер к себе на сервер в папку
/core/cacheи удаляем все папки которые там есть - Обязательно делаем копии всех файлов и базы данных сайта на MODX Revo. Если сайт у вас на локальном компьютере, просто сделайте копию папки с файлами сайта и экспорт базы данных в phpMyAdmin в формате SQL
- Закачиваем файлы на хостинг
- Переносим базу данных на хостинг путём импорта
-
Открываем файлы:
/core/config/config.inc.php
/config.core.php
/connectors/config.core.php
/manager/config.core.phpС помощью редактора Notepade или другого любого html редактора заменяем старое имя MySQL сервера на новый (всего localhost), так же везде заменяем имя базы данных и пароль.
Также везде заменяем старые пути на новые. Обратите внимание на то, что пути к сайту указываются от корня сервера, а не домена. Например:
было:
$modx_core_path= '/home/oldsite/public_html/core/';стало:
$modx_core_path= '/www/newsite/core/';
Вот и все! Сайт должен заработать!
ответ дан 26 мар 2018 в 12:20
![]()
alexsoinalexsoin
1291 серебряный знак11 бронзовых знаков
Если в работе над веб-проектами, созданными с помощью CMS MODX Revo, вы привыкли в целях безопасности перемещать каталог ядра Core или давать ему другое название, то при попытке произвести таким же образом установку MODX версии 3 вас ждет неудача. Неудача мелкая, однако она может ненадолго вас озадачить некоторой невнятностью текста в окне браузера.

Объяснение простое. Одним из ключевых отличий третьей ветки MODX Revolution от версии 2.x.x стало именно это!
The core directory can no longer be moved
With the incorporation of Composer in Revolution 3.0, the MODX core directory cannot be moved or renamed. Therefore, when updating a site with a relocated/renamed core directory, you’ll need to restore that to its original location first. For those accustomed to moving the core for added security, we recommend configuring your web server to prevent access to the core directory.
Каталог Core больше не может быть перемещен
С включением Composer в Revolution 3.0 основной каталог MODX нельзя переместить или переименовать. Поэтому при обновлении сайта с перемещенным/переименованным основным каталогом вам необходимо сначала восстановить его в исходное местоположение. Для тех, кто привык перемещать ядро для дополнительной безопасности, мы рекомендуем настроить веб-сервер таким образом, чтобы предотвратить доступ к основному каталогу.
Соответственно, и перед обновлением сайта на MODX с версии 2 на версию 3 приведите в порядок каталог с ядром. Верните папке название core и переместите ее в каталог по умолчанию.
Разработчики уверены, что с точки зрения безопасности не имеет значения, перемещено ли ядро физически, или же доступ к ядру закрыт другим способом.
From a security point of view, there is zero difference between physically moving the core out of the webroot to prevent direct access, and blocking access to it in a different way.
И оттуда же базовая защита для сервера Apache:
RewriteRule ^(.(?!well_known)|_build|_gitify|_backup|core|config.core.php) /index.php?q=doesnotexist [L,R=404]
Для сервера nginx:
location ~ ^/(.(?!well_known)|_build|_gitify|_backup|core|config.core.php) {
rewrite ^/(.(?!well_known)|_build|_gitify|_backup|core|config.core.php) /index.php?q=doesnotexist;
}
Настоятельно рекомендуем использовать версию PHP не ниже 7.4. Минимальная версия PHP для обновления MODX – 7.2.5, однако помните, что она, как и 7.3, больше не поддерживается.
Рекомендуемый хостинг

Если Вам нравится проект, а главное, статьи и обучающие материалы, на нём представленные, можно простимулировать автора, бросив на его счёт некую «символическую» сумму, что неизбежно подвигнет его на дальнейшее проявление здорового альтруизма…
А если Вы плюс ко всему оставите комментарий с пожеланиями о новых материалах, автор непременно прислушается к ним при дальнейшем планировании своей работы…
ЮМани (ранее Яндекс.Деньги)
-
-
- 1 Posts
Send PM
I’m running XAMPP on Windows XP.
When I try to install MODx Revolution, I keep getting
the following message’Error 503 Site temporarily unavailable’
Please help!
Helen -
-
-
- 152 Posts
Send PM
You should go to http://localhost/your-site/setup to get to the installer.
And welcome to MODx!
— A small step for mankind, so why not take two…
Working with web production, graphic design/workflow, photo and education — but are trying to get a life in between!
-
-
-
- 26 Posts
Send PM
Ola, I get the same error but because of a different action*.
I’ve accidentally deleted some files on the DEV server, I’ve but them back but now I get and 503 error.
Should I change folders rights?Also when I move from DEV to LIVE I get a 530 error.
reason why I accidentally deleted files
* I’ve opened my FTP client Filezilla, two tabs: the livesite and the dev site. I mixed them up and accidentally deleted files from the DEV site. -
-
-
- 26 Posts
Send PM
Ok, it was me.
The path in the config files need to be changed
in the coreconfigconfig.inc
and in the root config.core.phpI always make an back-up of my DEV and LIVE config file:
config.inc — DEV.php
config.inc — LIVE.php -
-
-
- 26 Posts
Send PM
I’ve had some problems installing MODX on our webhost, it gave a 503 on host A, but the same install worked on host B.
We found out a few months ago it had to do with a setting on host A. Now I know which setting it is:
php_admin_value suhosin.executor.disable_eval 0
php_admin_value suhosin.get.max_value_length 4096Mark Hamstra send me this link about it:
http://rtfm.modx.com/display/revolution20/MODX+and+Suhosin -
Hi Guys,
This is a project I have been working on for some time. I’m slowly getting over each hump as I come to it.
Sorry this is so long winded but I reckon more is better and may save a lot of questions.
My Goal is to move a copy of my Production Web page onto a private Development server.
The production page was written by an external company and is still hosted on their web server.
They have given me ftp access to the files and a backup of mySql in a dump.sql
I plan to develop / update some content on my development server and then move it into production once tested.
Development Machine
===================
I’m have installed Modx Revo version 2.2.6-PL which is the same version production. I copied the setup folder off the production server and ran it. Setup connected to my local My local MYSQL db no problem. This was restored from a dump.sql file.
The server is running Debian Wheezy. Apache is version 2.2.22 and PHP is Version 5.4.4-14+deb7u3.
All the static files that make up my web pages were copied off production into development using FTP.
I have done a file compare of the contents of all files and nothing seems to be corrupted.
OK
The Problem
=============
when I load http://myIPaddress/index.php I received the following error
Error 503
Site temporarily unavailable
Almost the same thing when I try and load http:/myIPaddress/manager
It just says
Site temporarily unavailable
When I look into index.php it appears that the error comes from this section. (I edited the title text to be sure)
(both the index.php and /manager page show my edited title)
My model/modx folder is actually not of the web server root folder.
It is located here core/model/modx
This folder structure is matching on both production and development.
The mysteries of htaccess still allude me at the moment but havn’t had much time to figure it out so far.
From what I can tell all my htaccess files are named ht.access so should not have any effect.
Does anyone know what is going on here?
forums.modx.com
Установка MODX Revolution на новый хостинг
Все дело в том что при установке на старом хостинге создались несколько файлов конфигурации MODX Revo которые нужно подправить. В моем случае я установил для демонстрации modx revo на локальную машину и соответственно домен и пути у вас будут отличаться чем прописываемые в моей статье
C:/OpenServer/domains/modxrevo.ru/
Файлы которые нужно подредактировать при установке CMS MODX Revolution на новый хостинг:
1) config.core.php в корне сайта нужно подправить следующую строку:
define('MODX_CORE_PATH', 'C:/OpenServer/domains/modxrevo.ru/core/');
2) /manager/config.core.php
define('MODX_CORE_PATH', 'C:/OpenServer/domains/modxrevo.ru/core/');
3) /connectors/config.core.php
define('MODX_CORE_PATH', 'C:/OpenServer/domains/modxrevo.ru/core/');
4) /core/config/config.inc.php данный файл требует большого редактирования.



При таком количестве необходимого редактирования записи можно вполне что-то пропустить.
Самое видимо простое решение это установить чистый modx revo на новом хостинге. Затем скачать те самые 4 файла, после скачки затереть установленную чистую CMS и затереть соответственно бд. Необходимые файлы мы получили, теперь можно по обычному заливать резервную копию. И теперь заливаем в соответствующие папки те самые 4 файла. Для /core/config/config.inc.php проверяем корректность прописи подключения к БД.
Возможна следующая ошибка Fatal error: Call to a member function parseProperties() on null in coremodelmodxmodelement.class.php on line 536
Очистить /core/cache/
Следующая ошибка которая у вас наверняка возникнет это то что вы неправильно настроите в базе данных таблицы users и user_attributes.
В таблице users вы конечно поменяете пароль, но можем возникнуть ситуация когда вы просто добавите нового пользователя допустим admin и пропишете все как надо, но опять не сможете войти в админку, все дело в том что таблица user_attributes обязательно должна содержать профиль теперь уже пользователя admin. Если профиля для нового пользователя admin нет, то и войти под данным логином вам не удастся.
Вот вы вошли в админку первым дело вам нужно зайти в ваш профиль логина, можно ничего не менять, а просто сохранится, чтобы если что не создалось в бд по логину, то нужно чтобы создалось. Потом нужно почистить профиль, снять блокировки в общем пощелкать все что лежит в журнале управления. Обычно на восстановление сайта уходят мгновения и все проходит легко, но с modx revolution не так быстро.
Всё.
ligatime.ru
Зачастую при необдуманном выборе хостинг-провайдера, в последующем, при возникновении каких-то ограничений или дискомфорта в использовании хостинга – многие решаются перенести свой сайт в другую хостинг-компанию, например, в Beget.
Но при, казалось бы, простом и успешном переносе сайта, находящегося на CMS MODX Revolution, можно столкнуться с рядом ошибок. Одна из них – «500 Error Site temporarily unavailable».
Эта же ошибка возникла и у меня при переносе, и сейчас я расскажу, как быстро с ней справиться.
1. Итак, первое, что вам необходимо сделать – это подключиться к вашему сайту по FTP.
2. Затем перейдите в папку /core/ и удалите в ней папку cache.
3. Третьим шагом будет проверка корректности указанных данных для подключения к базе данных. Для этого откройте файл config.inc.php в папке /core/config/.
Здесь нас интересуют эти строки:
$database_type = 'mysql'; // Тип базы данных $database_server = 'localhost'; // Сервер базы данных $database_user = ''; // Пользователь базы данных $database_password = ''; // Пароль базы данных $dbase = ''; // Название базы данных $database_dsn = 'mysql:host=localhost;dbname=название базы данных;charset=utf8';
Тип и сервер базы данных уточните у своего хостинг-провайдера, но чаще всего они именно такие, какие по умолчанию указаны в файле.
Пользователь и название базы данных чаще всего одинаковые, но этот момент так же уточните у своего хостинг-провайдера.
Обратите внимание, что в последней строке также указывается название базы данных. В моем случае все было сделано, но именно в ней я забыл указать название базы данных и из-за этого не мог зайти в панель управления сайтом.
4. И завершающим шагом будет прописывание корректного пути к папкам от корня сервера в файлах:
config.core.php (корневая папка /);
config.inc.php (папка /core/config/);
config.core.php (папка /connectors/);
config.core.php (папка /manager/).
Во всех файлах, вы ищите что то типа:
/home/s/pandogecom/www.pandoge.com/core/
Здесь вам необходимо изменить часть «/home/s/pandogecom/www.pandoge.com» на правильную.
О том, как узнать полный путь от корня сервера, читайте в этой статье.
В некоторых файлах замену нужно произвести в нескольких местах. Не торопитесь, будьте внимательны – и все у вас получится!
www.pandoge.com
500 error site temporarily unavailable modx revo
Наверное самая распространенная ошибка — это «500 error site temporarily unavailable» — это типа проблемы с сервером «Сайт временно недоступен». Происходит она по разным причинам — и всегда это настройки сервера и сайта. Для диагностики находим логи по адресу core/cache/logs/error.log — тут вы увидите примерные ошибки и они расшифрованы и примерно понять можно. При переносе сайта клиента на modx на локалку — я там нашел свою причину и удивился, оказалось, что у меня БД перенеслась не полностью, как такое произошло я до конца не понял, может ограничение какое-то, она была около 300 мб, в общем штук 10 таблиц не поместилось в архив, потом взял их отдельно запаковал и залил и все заработало. То есть всегда нужно смотреть в этот log файл — если есть какая-то ошибка.
Решения ошибки 500 error site temporarily unavailable на modx revo:
- Смотрим целостность БД (ошибку смотрим в логах — как написано выше). Часть базы данных может не скопироваться, если она слишком большая!!!
- смотрим файл .htaccess — пробуем его временно скопировать в другую папку и посмотреть как отреагирует.
- версия php — она должна быть от 5.3 — все что ниже — тоже свалит в ошибку.
saitsozdanie.ru
Fix «This Website Is Temporarily Unavailable» GoDaddy Error
Is the domain registered at GoDaddy and the domain status is active?
If the domain status is passive, or need renewal, then you need to renew the domain first and ensure the domain status is active.
Figure out the type of domain hosting package you have (cPanel, Managed WordPress, Website Builder, etc.)
You need to know what kind of hosting package you have and you have successfully generated domain records and added in the GoDaddy DNS manager.
Was the site working before and it changed to this, or was it never working?
The site may be having the error because you have done some recent changes in the DNS manager. It may take 4-8 hours for .com and .net domain names and 24-48 hours for other domain names. If you are hosting your domain in Word press, it may take 48 — 72 hours to complete the domain mapping.
Whether your domain name is pointing towards a Parked Page IP?
If the domain is pointing towards a parked page, change the name servers to the hosting provider’s.
For WordPress, the name servers are;
NS1.WORDPRESS.COM
NS2.WORDPRESS.COM
NS3.WORDPRESS.COM
Here is details of Google Open DNS and how to test it: Open DNS by Google.
Have you tried Cleared caches in the browser?
Sometimes the browser may have kept cache of the website with the error. Try clearing cache of your browser and reload it again.
How To Fix the this website is temporarily unavailable please try again later blogger error
First you should see whether your domain is visible in Internet. You can do that by visiting Whatsmydns website. Here is an easy way to do that. Copy the below URL and change shipmethis.com to your domain name. Paste the URL in the browser.
For Checking Active CNAME of Domain
https://www.whatsmydns.net/#CNAME/www.shipmethis.com
For Checking A Record of a Domain
https://www.whatsmydns.net/#A/www.shipmethis.com
For Checking AAAA Record of Domain
https://www.whatsmydns.net/#AAAA/www.shipmethis.com
Your domain is visible in internet if these CNAME, A Record and AAAA records are appearing fine with a green color. If not there may be errors in any of these domain records. You may need to change the DNS settings of your domain in this case. Login to GoDaddy DNS manager and check these domain records.
www.shipmethis.com
Причины ошибки 503 Service Unavailable в WordPress
Ошибка 503 service unavailable может быть вызвана рядом причин, включая (но не ограничиваясь):
- Ошибки в плагинах или темах
- Сбои в работе пользовательский PHP скриптов
- Недостаточно ресурсов сервера
- Ошибки сервера
- Злоумышленные атаки, такие как хорошо всем известные DDoS (Distributed Denial of Service)
Мы пройдёмся по всем этим причинам и предложим различные решения по устранению ошибки 503 service unavailable.
Ошибка в плагине
Некорректно работающий плагин может быть причиной большинства возникающих в WordPress ошибок. К слову, ошибка в плагине лидирующая причина возникновения ошибки 503 service unavailable в WordPress.
Если вы столкнулись с ошибкой 503 после установки или обновления конкретного плагина, скорее всего вы уже нашли виновника. Всё, что вам потребуется сделать, это удалить проблемный плагин и работа сделана.
Если, однако, у вас нет идей по поводу того, какой именно плагин мог вызвать ошибку 503, нужно начать диагностику путём деактивации всех плагинов.
Но как деактивировать все плагины WordPress, если у вас нет доступа к админ панели?
Деактивация всех плагинов WordPress
Зайдите в ваш каталог WordPress по FTP или используя Файловый менеджер. В этом руководстве будем использовать популярную программу подключения по FTP FileZilla:

Так выглядит наш тестовый каталог WordPress в Файловом менеджере на Hostinger:

Внутри нашего каталога WordPress, найдите и откройте каталог wp-content, который содержит ваши плагины, темы и медиа контент среди прочего.
Нажмите правой кнопкой мыши на каталоге plugins и переименуйте его в plugins-old:

Это приведёт к деактивации всех плагинов одновременно. Теперь переименуйте обратно plugins-old в plugins и перегрузите свой сайт. Если ошибка 503 исчезла, плагин является причиной вашего текущего затруднительного положения.
Всё, что нам сейчас потребуется сделать, это найти тот плагин, который вызывает проблему.
Теперь вы сможете зайти в свою админ консоль на сайте WordPress через браузер и активировать по очереди один за другим все плагины.
Каждый раз, когда вы активируете плагин, перезагружайте сайт, чтобы выявить неисправный плагин. Как только вы нашли хулиганистый плагин, зайдите свой каталог plugins по FTP и удалите его:

Если деактивация плагинов не помогла в устранении ошибки 503 service unavailable, читайте дальше другие решения. Теперь давайте проверим, не является ли причиной проблемы ваша тема.
Сомнительная тема WordPress
Порой, скрипт PHP с ошибками, который выдаёт ошибку 503 может быть частью темы. Для проверки этого, мы переключимся на тему по умолчанию Twenty Seventeen. Между прочим, рекомендуется оставлять темы по умолчанию даже после установки новой темы, поскольку она (тема по умолчанию) служить запасной темой в случае проблема с вашей.
Деактивация темы WordPress
Прежде, чем мы деактивируем вашу тему (или удалим, если это проблема) нужно создать бэкап. Подключитесь к своему сайту WordPress по FTP и перейдите в каталог wp-content -> themes.
Найдите вашу текущую тему и скачайте её, как показано ниже:

Далее удалите вашу текущую тему и перезагрузите сайт. Если ошибка 503 исчезла, вам нужно исправить/обновить вашу тему. Если это не вариант для вас, тогда возьмите новую копию или другую тему.
Если ошибка 503 service unavailable осталась, возможно, фрагмент кода PHP с ошибкой находится где-то в другом месте вашего сайта.
Сбой в работе пользовательского кода PHP
Порой, код от сторонних сервисов или фрагмент кода, который вы добавили на свой сайт может вызвать ошибку 503. Но как определить, что проблема в коде.
В обычном режиме, когда ваш сайт работает, можно использовать плагины для отладки, такие как Query Monitor и Debug Bar.
Включение WP_DEBUG
Но, так как 503 ошибка часто блокирует вам вход в админ панель вашего WordPress сайта, мы будем использовать константы WP_DEBUGи WP_DEBUG_LOG, WP_DEBUG_DISPLAY и @ini_set доступные в WordPress.
Для включения режима отладки в WordPress и записи логов ошибок в файл, следуйте шагам:
- Откройте каталог WordPress по FTP или в Файловом менеджере.
- Откройте файл wp-config.php
- Прокрутите до определения константы WP_DEBUG. Выглядит так:
define ('WP_DEBUG', false);. Если она пропущена, мы добавим её сразу перед словами/*That's all, stop editing! Happy blogging.*/ - Вставьте магический код отладки DEBUG. Только исправьте код
define ('WP_DEBUG', false);на:
define ('WP_DEBUG', true);
define ('WP_DEBUG_LOG', true);
define ('WP_DEBUG_DISPLAY', false);
@ini_set ('display_errors', 0); - Сохраните изменения

Теперь перезагрузите свой сайт, чтобы вызвать появление ошибки. Далее, найдите файл под названием debug.log внутри вашего каталога wp-content в каталоге WordPress.
В этом файле содержаться записи по всем ошибкам на вашем сайте. Если ваша ошибка 503 service unavailable вызвана фрагментом пользовательского кода, это будет видно с указанием её подробностей.
Устраните/замените проблемный код и перезагрузите сайт. Если ошибка 503 осталась, проблема может быть в вашем веб-сервере.
Причины, связанные с сервером
Ряд причин, связанных с сервером тоже может вызывать ошибку 503 service unavailable. Обычно, ошибка 503 вызванная проблемами с сервером исчезает автоматически через несколько минут.
Если же ошибка продолжает появляться, вот ряд решений, которые мы для вас подготовили, здесь парочка моментов, которые вы можете попробовать.
Повысить ресурсы сервера
Некоторые тарифные планы общего хостинга просто не имеют необходимого количества ресурсов для работы с трудоёмкими задачами. Если у вашего хоста узкое место в использовании серверных ресурсов, возможно пришло время переключиться на новый WordPress хостинг или сменить свой тарифный план на текущем хостинге.
Вы постоянно получаете ошибку 503 service unavailable? Если да, проверьте свои показатели в Google analytics. Если вы получаете больше трафика, чем обычно, вам определённо перестало хватать изначальных ресурсов сервера.
Однако, если у вас нету прироста в трафике, но всё равно возникает ошибка 503, ваша проблема не имеет отношение к недостаточному количеству RAM или памяти на сервере.
Ограничение частоты сканирования Google
Для индексирования вашего контента, Google использует специальные скрипты, известные как сканеры (crawlers). Они регулярно посещают сайт и собирают контент и определяют другие показатели ранжирования.
Хоть это и редкий случай, но сканирование может вызвать рост потребления ресурсов на вашем сервере и замедление работы сайта. Чтобы обойти это и избежать ошибки 503, вы можете ограничить частоту сканирования Google в Google Search Console.
Примечание: Изменения, внесенные вами, будут действовать в течение 3 месяцев. К тому же, если у вас есть версия сайта с WWW и без WWW, сделать настройки нужно для обоих.
Войдите в Google Search Console и выберите свой сайт. Далее нажмите на иконку шестерёнки, как показано ниже:

На следующей странице настройте частоту сканирования Google перемещением ползунка влево:

Ограничение WordPress Heartbeat
Согласно WordPress.org, “…Heartbeat API – это пример API приложения встроенного в WordPress и осуществляющего опрос сервера, позволяя в режиме почти реального времени видеть показатели.” Он отвечает за такие функции, как авто-сохранение и так далее.
Приложение WordPress Heartbeat API запускает файл admin-ajax.php среди других запросов с регулярным интервалом, когда вы заходите на свой сайт.
Это функциональность потребляет ресурсы вашего сервера, но вы можете её ограничить или вообще выключить. Когда вы восстанавливаете свой сайт, вы можете использовать плагин Heartbeat Control WordPress для ограничения этой функциональности, вместо того, чтобы выключить его вообще.
Чтобы определить вызывает ли WordPress Heartbeat ошибку 503 service unavailable на своём WordPress сайте, добавьте следующий код в свой файл темы functions.php сразу после открытия тэга <?php:
add_action( 'init', 'stop_heartbeat', 1 ); function stop_heartbeat() { wp_deregister_script('heartbeat'); }
Сохраните изменения и перезагрузите сайт. Если ошибка 503 пропала, вздохните с облегчением. Но если ошибка 503 service unavailable всё ещё осталась, это значит WordPress Heartbeat API является наименьшей из ваших проблем.
Если код выше не помог устранить ошибку 503, не забудьте удалить этот код из своего файла functions.php.
Заключительные заметки
Если не одно из предложенных решений для вас не сработало, возможно мы пропустили то решение, которое помогло бы именно вам. В таком случае, не стесняйтесь поделится своей ситуацией с нами в комментариях и мы сможем найти решение вместе.
Надо отметить, что ошибка 503 service unavailable, это преимущественно результат выполнения некорректного кода PHP, такого как ошибка в плагине или теме.
Также важно отметить, что 503 ошибка вызванная недостатком ресурсов сервера чаще всего проходит сама собой, поэтому всегда перезагружайте свой сайт немного погодя для проверки того, осталась ли ещё ошибка.
Независимо от того, что происходит, помните вы всегда можете исправить ошибку 503 service unavailable совершенно не утруждая себя. А поэтому, нет повода для паники, так как это не постоянная ситуация.
Сталкивались ли вы с ошибкой 503 service unavailable? Как вы её устраняли? У вас есть вопросы или предложения? Пожалуйста, делитесь ими в комментариях ниже. Заранее благодарим!
www.hostinger.ru
Я имел ввиду вот что делать.
/* check for correct version of php */ $php_ver_comp = version_compare(phpversion(),'5.1.0'); if ($php_ver_comp < 0) { die('Wrong php version! You're using PHP version "'.phpversion().'", and MODX Revolution only works on 5.1.0 or higher.'); } exit();//Добавили exit(); /* set the document_root */ /*if(!isset($_SERVER['DOCUMENT_ROOT']) || empty($_SERVER['DOCUMENT_ROOT'])) { $_SERVER['DOCUMENT_ROOT'] = str_replace($_SERVER['PATH_INFO'], '', str_replace('\', '/', $_SERVER['PATH_TRANSLATED'])) . '/'; }*/ /* include the modX class */ /*if (!(include_once MODX_CORE_PATH . 'model/modx/modx.class.php')) { include MODX_CORE_PATH . 'error/unavailable.include.php'; die('Site temporarily unavailable!'); }*/ /* @var modX $modx create the modX object */ /*$modx= new modX('', array(xPDO::OPT_CONN_INIT => array(xPDO::OPT_CONN_MUTABLE => true))); if (!is_object($modx) || !($modx instanceof modX)) { $errorMessage = '<a href="../setup/">MODX not installed. Install now?</a>'; include MODX_CORE_PATH . 'error/unavailable.include.php'; header('HTTP/1.1 503 Service Unavailable'); echo "<html><title>Error 503: Site temporarily unavailable</title><body><h1>Error 503</h1><p>{$errorMessage}</p></body></html>"; exit(); } $modx->initialize('mgr'); $modx->getRequest(); $modx->getParser(); if (isset($modx) && is_object($modx) && $modx instanceof modX) { if (!$modx->getRequest()) { $modx->log(modX::LOG_LEVEL_FATAL,"Could not load the MODX manager request object."); } if (!MODX_API_MODE) { $modx->request->handleRequest(); } } @session_write_close(); exit();*/
Всё остальное закомментировали, потом опять то же самое, но на более позднем участке. И так пока не найдёте в каком месте у вас вылазит ошибка. Нашли, если это во время подключения класса, то просто возмите и залейте заново все классы с заменой файлов
modx.im
Серверные ошибки
- Ошибка 403 — 403 Access denied
- Ошибка 404 — 404 File not found
- Ошибка 500 — 500 Internal server error
- Ошибка 502 — 502 Bad Gataway
- Ошибка 503 — 503 Service temporarily unavailable
- Ошибка 504 — 504 Gateway time-out
Ошибка 403 — 403 Access denied (Доступ к ресурсу запрещен)
Ошибка 403 означает, что доступ к ресурсу, папке или файлу запрещен (получен код 403 Forbidden). Возможно, что доступ был закрыт через файл .htaccess.
Так же ошибка может быть вызвана тем, что в папке нет index файла.
Ошибка 404 — 404 File not found
Документ по указанному URL не существует. Возможно, такой файл удален, либо вы ошиблись при наборе URL в браузере или пошли по неверной ссылке.
Ошибка 500 — 500 Internal server error
Появление 500 ошибки, может быть связано с неправильно указанными параметрами в файле .htaccess, который находится в папке с вашим сайтом.
Также, если файл сохранён в кодировке UTF-8, он должен быть без метки BOM. Если же файл сохранён в UTF-8 с меткой BOM, откройте файл и сохраните его без метки BOM.
Ошибка 500 у CGI скриптов, может быть вызвана из-за неправильных прав у файла-скрипта CGI (должны быть 755).
Также, это может быть ошибка непосредственно в сценарии скрипта. Точную причину можно установить, просматривая лог ошибок.
Ошибка 502 — 502 Bad Gataway
Данная ошибка означает, что сервер (или proxy-сервер) получил недопустимые ответы другого сервера (или proxy-сервера).
Причиной может быть некорректная работа скриптов, либо ошибка ответа шлюза веб-сервера.
Одна из наиболее частых причин ошибки 502:
скрипт сайта отправляет cookie или другие данные множество раз при каких-то определённых действиях, в результате чего объём заголовков (header) растёт больше допустимого лимита веб-сервера.
При достижении порогового значения, веб-сервер отклоняет запрос с слишком большим заголовком, отбрасывая соединение с ошибкой 502 Bad Gateway. Такое бывает, когда скрипты написаны разработчиками без должной оптимизации.
На хостинге используется связка веб-серверов nginx (front-end) + apache (back-end)
У nginx указаны оптимальные параметры для заголовков:
proxy_buffer_size 32k; proxy_buffers 16 32k;
Прочие причины:
иногда пользователи невнимательны в выборе опций, и не читают их описание.
В хостинг-панели зайдите в раздел Домены → Настройки, если там включены все опции прдряд (стоят галочки), то отключите их. Это может убрать ошибку 502.
Ошибка 503 — 503 Service temporarily unavailable
Ошибка 503 (Service Temporarily Unavailable) – обслуживание временно недоступно.
Многие не до конца понимают причины появления ошибки 503 и считают, что во всем виноват сервер.
5хх ошибки действительно серверные, но это не всегда значит, что проблема именно на стороне сервера.
Если вам необходимо как можно быстрее избавиться от этой ошибки, завершите процессы на аккаунте.
Информация для более детального понимая проблемы.
Что же такое хостинг? Хостинг — некоторое количество аккаунтов на одном сервере, в каждом аккаунте может быть не один сайт и основное ограничение на нашем хостинге — это ограничение по нагрузке аккаунта пользователя, причем ограничение от одного потока процессора (CPU), а мы используем мощные многопроцессорные сервера.
Приведем пример на основе нашего сервера с минимальной частотой CPU 3.2GHz — это частота одного потока (ядра) процессора, а их 8 (на некоторых — больше), но как написано выше, ограничение для одного аккаунта считается от одного ядра. Теперь возьмем минимальный тариф SSD1, где ограничение по нагрузки составляет 20% CPU. 20% от 3.2GHz это640MHz, причем всего за 100 рублей/месяц. Много это или мало — решать вам, но для минимального тарифа этого более чем достаточно. Поэтому для каждого аккаунта на сервере выделяется определенное количество рабочих процессов, которые обрабатывают запросы пользователей ваших сайтов. Эти запросы поступают на сервер в порядке очереди. Если этих запросов несколько, то сервер их легко обработает, но если их достаточно много — очередь будет расти, а если процессы еще в добавок и тяжелые, то очередь будет продвигаться медленнее.
Сервер ограничен в вычислительных мощностях, поэтому есть ограничения по нагрузке для каждого аккаунта. Если серьезная нагрузка длится слишком долго — может «рухнуть» весь сервер, все аккаунты пользователей и все сайты — вот тут и возникает ошибика 503 (Service Temporarily Unavailable) говорящая о том, что веб-сервер не может обрабатывать больше запросов и необходимо подождать пока очередь уменьшиться и можно будет дальше обрабатывать запросы.
Мы рассмотрели, как устроен хостинг и теперь постараемся описать основные причины, при которых может расти очередь, и, по возможности, пути решений этой проблемы. Иногда это может быть очень сложной задачей и собственных знаний может не хватить, но тем не менее, рассмотрим варианты:
— Зависание скриптов при передаче больших статичных файлов через PHP.
Такие большие файлы лучше всего передавать напрямую, не используя скрипты. Почему? Скрипты работают определенное время, а не постоянно и при окончании времени работы скрипта прерывается передача файла, соответственно файл не будет передан полностью, а запрос оставит процесс веб-сервера работать ещё длительное время. Также, каждая передача файлов через PHP — это отдельный рабочий процесс веб-сервера apache, а для передачи статичных файлов напрямую будет использоваться отдельный многопоточный процесс веб-сервера nginx, который может обрабатывать множество потоков, а значит не будет влияния передачи файла на загрузку.
Хранение и отдачу файлов можно также реализовать через правила mod_rewrite и файл .htaccess, в этом случае можно использовать решение антилич. Антилич — это система, которая не позволит скачать ваш файл по ссылке на странице с другого сайта. Часто, если ваш файл популярен, недобросовестные web-мастера могут поставить у себя прямую ссылку на него, не упоминая о вашем сайте. Естественно, если сайт, на котором подгружается изображение от вашего сайта, посещаемый — это так же может создавать дополнительную нагрузку.
— Удаленное соединение с другим сервером (сайтом и т.д.).
Удаленных соединений, по возможности, лучше избегать, но если оно необходимо, то желательно выставлять маленькие значения таймаутов ожидания ответов от другого сервера, так как удаленный сервер может быть недоступен в определенное время, что может вызывать постоянные запросы на соединение с удаленным сервером. Поэтому в таких случаях очень важна хорошая связь с этими удаленными серверами.
Также часто используют вставки отдельных функций, кодов и т.д. (include) и если эти функции располагаются в одном аккаунте — используйте только локальные пути, а не в виде вставки url-адреса (). Лучше вставить конструкцию, например, такого вида: http://site.ru/file.phpinclude 'file.php';. Это не будет делать дополнительный внешний запрос на сервер и тем самым вы снизите нагрузку, уменьшите количество создаваемых процессов.
— Очень тяжелые или испорченные дополнения систем управления сайтами (при использовании CMS и прочих скриптов).
Для нахождения таковых можно отключать дополнения (плагины, хаки, модули и т.д.) по отдельности. Возможно при включении/отключении вы заметите, что сайт станет быстрее/медленнее загружаться. Далее вы сможете найти более легкую замену или исправить поврежденные дополнения. Также в дистрибутив многих CMS включены дополнения, которые лично вам могут быть не нужны, поэтому лучше их удалить.
— Задания выполняющиеся долгое время.
Иногда в самих скриптах пишут задания на выполнение чего-либо по расписанию (например в тех же mambot’ах в joomla). Если их можно перенести в планировщик (cron), то лучше это сделать через cron, так как такие задания в joomla выполняются вместе с запросами пользователей и тем самым замедляют загрузку сайта и увеличивают нагрузку, а в некоторых случаях сайт вовсе перестает загружаться.
— Почтовые рассылки.
Рассылки писем могут влиять на загрузку сайта, тем не менее они часто бывают необходимы и их так же лучше оптимизировать. Скрипт запуска рассылки можно добавить в планировщик (cron), как и в случае с mambot’ами в joomla. Управление планировщиком находится в панели управления хостингом и доступно при соответствующем тарифе. Запускать такие скрипты лучше во время наименьшей нагрузки, например ночное, когда на сайте меньше всего посетителей.
— Медленные или не оптимизированные запросы sql к базе данных.
Пути решения в этом случае – использование кеширования, оптимизация запросов и индексация таблицы базы данных по столбцам (сортировка, упорядочивание). Также, если все это не помогает, стоит подумать о смене скрипта на более оптимизированный.
— Большое количество запросов к серверу.
Старайтесь избегать лишних запросов. Запросы могут исходить не только от посетителей ваших сайтов, но и, например, от индексирующих ботов с поисковиков, sape и т.д, также увеличивается количество запросов при использовании большого количества url на файлы (изображения, js-скрипты, css-стили), которые загружаются через отдельные запросы (при включенном apache вместо nginx). По возможности, объединяйте их в один файл.
Также запросы могут исходить, например, от чата или какого-то участка, блока на сайте, который посылает ajax-запросы на сервер. Многие из нас любят открывать несколько вкладок в браузере — нужно учитывать, что от этого так же может увеличиваться количество запросов и соответственно процессов веб-сервера.
Вставка iframe-кодов на сайте тоже может быть причиной ошибки 503.
Еще один пример увеличения запросов — использование другими сайтами ваших ресурсов (ссылки на файлы, картинки, различные информеры). Используйте антилич системы в борьбе с этим.
DDoS-атаки, флуд, спам в комментариях, или в других веб-формах на сайте так же могут вызывать большое количество запросов.
Если у вас все оптимизировано, используется кеширование, минимум запросов и просто не хватает ресурсов на используемом тарифе, тогда остается задуматься о переходе на другие тарифные планы.
Конечно, все хотят недорогие тарифы, при этом про оптимальное расходование ресурсов многие просто забывают.
На WebHOST1 разработаны оптимальные тарифы и нужно просто подобрать необходимый для вас тариф, что можно осуществить самостоятельно в биллинге.
Наконец, если вашим сайтам не хватает топового тарифа и часто возникает 500 ошибка, а вы не знаете как избежать данной проблемы — значит требуется больше ресурсов и вам нужен, как минимум, виртуальный либо выделенный сервер.
Ошибка 504 — 504 Gateway time-out
Этот код ответа означает, что клиентский запрос nginx передал apache, а apache не смог в установленный лимит времени вернуть HTTP-ответ?, в рузультате сервер разрывает сетевое соединение по таймауту. Причиной может быть долгая работа процесса — сценария, запущенного скриптом веб-сайта.
Можно попробовать увеличить выделенное время для php, прописав в корне сайта в файл .htaccess код:
# время выполнения скрипта - сценария php_value max_execution_time 60 # время загрузки данных php_value max_input_time 60
Однако это не избавит от таймаута веб-сервера с 504 ошибкой. Таймаут веб-сервера в рамках виртуального хостинга изменить не представляется возможным.
webhost1.ru