Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» Установка Apache 2.x, PHP4, PERL и MySQL на localhost под Wi

Автор: Itto
Дата сообщения: 05.08.2013 12:54
Здравствуйте !
Возник актуальный вопрос
Есть вебсервер CentOS 6.4 LAMP
если завалили SQL сервер (не важно как и зачем - завалили и все)
нам апач выдает сообщение :
"Database connection error (2): Could not connect to MySQL."
При этом апач выдает код 200 сообщая этим поисковым роботам и машинам что запрос обработан успешно и они думают что та фраза которая отображается на странице - это и есть содержимое данной страницы
Очень хотелось бы узнать - как в этом случае поменять ответ сервера "200"
на 500 или 403 или тп
чтоб окружающим нас роботам было понятно
что надпись
"Database connection error (2): Could not connect to MySQL."
не является содержимым всех 1500 страниц нашего сайта - а то что сайт не работает !
Подскажите люди добрые - что нужно подпилить

PS: Сentos 6.4, PHP 5.3.3, MySQL 5.5.32-cll-lve, Apache/2.2.15, Joomla 2.5.14
Автор: Lou
Дата сообщения: 05.08.2013 13:21
а) Это сообщение выдает джумла, а не апач.
б) Например, в Directory поменяйте Allow from all на Deny from all. Будет 403 Forbidden.
Автор: Itto
Дата сообщения: 05.08.2013 15:50
Lou
Отлично - вопрос открыт - как это сделать в автоматическом режиме
без ручного привода ?
Это всем понятно - что делать есть остановился mysql
service mysqld start
мне нужно автономное решение
те произошло событие - встал мускул
по этому событию апач начинает выдавать ошибку 501 а не 200
Автор: Lou
Дата сообщения: 05.08.2013 19:07
Апач в стандартной конфигурации никак не связан с БД. Или смотрите модули апача наподобие mod_dbd, или пишите код, который пингует БД и в случае ее остановки выдает заголовки 503 Service Unavailable.
Что-то типа такого:


Код:
<?php
error_reporting(0);
if (mysqli_ping(mysqli_connect("localhost", "user", "password", "db_name")) == NULL)
{
$protocol = "HTTP/1.0";
if ( "HTTP/1.1" == $_SERVER["SERVER_PROTOCOL"] ) $protocol = "HTTP/1.1";
header( "$protocol 503 Service Unavailable", true, 503 );
header("Status: 503 Service Unavailable");
header( "Retry-After: Mon, 19 Aug 2013 12:00:00 GMT" );
echo "503 Service Unavailable";
}
?>
Автор: Cheery
Дата сообщения: 05.08.2013 19:10
Itto
Вообще то в данной теме обсуждение апача и остального под Windows

и вам вообще сюда
Портал Joomla (часть 2)
это особенность движка, что и когда он выводит. апач и остальное тут совсем не при чем.
Автор: Itto
Дата сообщения: 06.08.2013 07:14
Lou
Понял, спасибо за наводку на mod_dbd,
и код - будем копать
Cheery
Я там писал (в ветке по Joomla) тоже самое на несколько дней раньше
но ответа не получил поэтому полез сюда
в принципе моя проблема не затрагивает вопроса на какой OS стоит апач
Но раз Вы считаете что это тут недопустимо - ухожу
Спасибо !
Автор: Cheery
Дата сообщения: 06.08.2013 07:27
Itto

Цитата:
в принципе моя проблема не затрагивает вопроса на какой OS стоит апач

проблема решается модификацией кода Joomla, там, где коннектится в MySQL
и вместо вывода ошибки делается 404 заголовок

наверняка есть плагин, либо можно написать свой.
но 404 плохо для рабочих линков - вы смутите поисковик, а это может привести к выпадению страниц из индексации.
проще отключить вывод ошибок.
Автор: Itto
Дата сообщения: 06.08.2013 18:30
Cheery
404 это не то что плохо
это неприемлемо
Автор: Cheery
Дата сообщения: 06.08.2013 20:43
Itto
http://forum.joomla.org/viewtopic.php?p=2488189
Автор: Itto
Дата сообщения: 07.08.2013 07:18
Cheery
Спасибо - я думаю это то что нужно !
хоть какое-то прояснение наступает
Автор: reenoip
Дата сообщения: 28.10.2013 12:05
Извиняюсь, в данную тему вышел поиском, сразу не углядел, что "под Wi". Перенёс свой вопрос сюда.
Автор: Futurism
Дата сообщения: 29.01.2014 17:15
связываю этот свой топик
http://forum.ru-board.com/topic.cgi?forum=31&topic=19447#1

Цитата:
php5_ts.dll в папку с httpd.exe или в system32

у меня нет этой библиотеки в папке C:\php5
там только php5.dll
Автор: Cheery
Дата сообщения: 29.01.2014 23:25
Futurism

Цитата:
у меня нет этой библиотеки в папке C:\php5
там только php5.dll

если вы подключаете php5 как модуль апача - должен быть.. так как nts под Windows в апаче, если мне не изменяет память, нельзя..

что качали?
http://windows.php.net/download/
под Windows апач нужна Thread Safe сборка

ps: и немного опечатался, правильно будет php5ts.dll
Автор: Futurism
Дата сообщения: 30.01.2014 13:26
Cheery
http://windows.php.net/download/ вот что я скачал
php-5.5.8-nts-Win32-VC11-x86.zip

Цитата:
под Windows апач нужна Thread Safe сборка

А можете линк скинуть
Автор: Futurism
Дата сообщения: 30.01.2014 17:33
все сообразил
занчится удалил апач!
с сайта
http://windows.php.net/download/
скачал этот архив
VC11 x64 Thread Safe (2014-Jan-09 18:16:07) а с http://www.apachelounge.com/download/
этот httpd-2.4.7-win64-VC11.zip
но он после архива без инсталятора. Как мне его установить?
Автор: Cheery
Дата сообщения: 30.01.2014 23:11
Futurism

Цитата:
но он после архива без инсталятора.  Как мне его установить?

ему не нужен инсталлятор.
распаковываете куда хотите.
если нужен сервис, то
httpd -k install -n "Название сервиса"

если нужно указать путь к конфигу (нестандартное мето), то добавить -f "путь_к_файлу"
Автор: Omsk
Дата сообщения: 24.03.2014 11:42
На Apache 2.2 устанавливаю php VC11 x86 Thread Safe (2014-Mar-06 00:49:16)
И в сообщении пишется, что не возможно загрузить php5apache2_4.dll
Вот httpd.conf http://slil.ru/uploaded/a57ua

Почему?
Автор: vlary
Дата сообщения: 24.03.2014 12:03
Omsk
Цитата:
Почему?
Ссылка

Автор: Omsk
Дата сообщения: 25.03.2014 05:37
Английский я не знаю, из той темы я понял, что несовместимость версий.
Я хотел установить самый последний Apache, нашел только версию httpd-2.2.25-win32-x86-no_ssl.msi, как советуют в той теме.
У меня 32 разрядная система.
Установил PHP VC9 x86 Thread Safe (2014-Mar-06 00:29:49), версия 5.4.26, так не работало:
AddType application/x-httpd-php phtml php
LoadModule php5_module C:/server/php/php5apache2_4.dll - поставил php5apache2_2.dll, заработал PHP.
Только я хотел самый последний Apache и PHP последней версии, возможно сделать, чтобы они работали вместе?
Автор: Cheery
Дата сообщения: 25.03.2014 06:00
Omsk

Цитата:
возможно сделать, чтобы они работали вместе?

вы же на версии смотрите.
вы в апач 2.2 пытались подгрузить php модуль для апач 2.4
используйтесь версию модуля 2.2 и будет все работать вместе.
Автор: Omsk
Дата сообщения: 25.03.2014 06:02
Я так и сделал, работает. Apache 2.4 будет работать с версией PHP 2.4?
Автор: Cheery
Дата сообщения: 25.03.2014 06:03
Omsk

Цитата:
Apache 2.4 будет работать с версией PHP 2.4

не с PHP 2.4, а с модулем PHP для апача версии 2.4
если в сборке PHP есть модуль для такой версии апача, то будет
Автор: Omsk
Дата сообщения: 27.03.2014 08:32
Я еще в httpd.conf заменил localhost на l, в файле hosts такая запись:
127.0.0.1 l
127.0.0.1 p
И не работает адрес l и P, только localhost, Почему? Дома l и p работают.
Автор: Omsk
Дата сообщения: 01.04.2014 05:55
Устанавливаю Drupal 7.26, на проверке соответствия требованиям появляется такое сообщение:


В php.ini я раскомментировал строки extension=php_gd2.dll, extension=php_mbstring.dll, extension=php_pdo_mysql.dll и не помогло.
Почему?
Автор: Cheery
Дата сообщения: 01.04.2014 05:57
Omsk

Цитата:
Почему?

потому, что нужно перезапустить сервер после этого, чтобы прочитались новые настройки.

и очень, очень не рекомендую запускать друпал под виндовым апачем и php
оно так тормозит, что даже memcached и apc не помогают.
Автор: Omsk
Дата сообщения: 01.04.2014 06:05
Веб-сервер перезапускал несколько раз.
Это я временно друпал на виндовс устанавливаю, пока сервер готовят.
В папке еще два файла php.ini, я стал использовать первый, не помню как он назывался.
Автор: Cheery
Дата сообщения: 01.04.2014 06:07
Omsk

Цитата:
Веб-сервер перезапускал несколько раз

<?php
phpinfo();
?>
смотрите что подключено и откуда читаются настройки php.ini - могли править не тот файл.
более того, .dll должны быть из того же комплекта php


Цитата:
В папке еще два файла php.ini, я стал использовать первый, не помню как он назывался.

значит не тот правите. не может быть в одной папке двух файлов с одним названием.
включите отображение расширений файлов.
Автор: Omsk
Дата сообщения: 01.04.2014 06:17
Вот что нашел: Configuration File (php.ini) Path     C:\Windows, но там нет этого файла, скопировал его туда, перезапустил апач, не работает.
Там не с одним названием, там был один php.ini-development, другой с подобным названием.
После копирования файла php.ini в Windows, появилась еще такая строка: Loaded Configuration File     C:\Windows\php.ini
Автор: Cheery
Дата сообщения: 01.04.2014 06:20
Omsk
я же сказал куда смотреть.
1) смотрите откуда читает (если использует php.ini) - код показал выше, просто создаете файл с этим кодом и открываете его в браузере с сервера
2) включите отображение известных расширений файлов - может вообще не на .ini файл смотрите.


Цитата:
Там не с одним названием, там был один php.ini-development, другой с подобным названием.

это не такое же название - это шаблоны для переименования и самостоятельного редактирования.

вот какой .ini подгружается - тот и редактируйте.

проще в конфиге апача указать откуда грузить .ini файл, если что
к примеру.
PHPIniDir "C:/PHP"
Автор: Omsk
Дата сообщения: 01.04.2014 06:27
Я таки сделал:

В папку Windows загрузил рабочий Php.ini из папки php

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950

Предыдущая тема: Вопросы по Linux Mandrake 9.0


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.