G-and-Y

G-and-Y
Рейтинг
185
Регистрация
29.06.2013
18572d
Дадуда:
По очереди. Только если сайт вообще не открывается, скрипт не сработает.
Может в вашем случае тогда что-нибудь типа

заюзать?

Что значит если вообще не откроется? Пробовал выкл. апач мускул нджиникс вместе, и по очереди, все запускалось.

Это в коде вроди 10 сек если не ответит

curl_setopt($ch, CURLOPT_TIMEOUT, 10);

Сегодня кстати уже спас 1 рас

MYSQL

png image.png

&& - двойной амперсанд указывает на то, что следующая команда не будет выполнена, если предыдущая завершилась неудачно.

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

Теперь думаю как лучше перезагружать, все сразу или по очереди?

Andreyka:
Поздравляю с изобретением monit!

Так это нада разбиратся с этим монитом он еще ресурсы наверно жрет какие то, а тут скриптик 1кб и усе. Ну а вообще да если раньше кто то подсказал, мб было б и проще.

Ничего не получилось, решил вопрос запуском пшп из папки под рутом в кроне

* * * * * /usr/lib/cgi-bin/php /var/www/script.php

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

может кому пригодится

<? function check_http_status($url)
{
$user_agent = 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_VERBOSE, false);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSLVERSION, 3);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$page = curl_exec($ch);

$err = curl_error($ch);
if (!empty($err))
return $err;

$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return $httpcode;
}

$url2 = array("/", "http://site2.ru");
foreach ($url2 as $url) {
$answer = check_http_status($url);

$date = date('H:i - d.m.Y');
$file = 'log.txt';
$content = "$url - $answer - $date\n";
if ($answer ==200) {
echo ""; }
else {
exec ('sh /var/www/script.sh');
mail("mulo@mail.ru", "$answer - $url - $date", "$url - $answer - $date");
file_put_contents($file, $content, FILE_APPEND | LOCK_EX);
}
}
?>

Маленький вопрос, как в баш запустить команды по очереди а то работает только последняя

#!/bin/bash
/etc/init.d/mysql restart
/etc/init.d/apache2 restart
/etc/init.d/nginx restart

записал в /etc/sudoers

www-data ALL=(root) NOPASSWD: ALL

su www-data

sudo sh /var/www/1/2.sh

работает

<?php
$result = shell_exec ('sh /var/www/1/2.sh');
echo $result;
if ($result)
{
echo "Все хорошо.";
}
if (!$result)
{
echo "Ошибка.";
}
?>

Пишет

Stopping MySQL database server: mysqld failed! /etc/init.d/mysql: ERROR: The partition with /var/lib/mysql is too full! ... failed! Все хорошо.

$result = shell_exec ('sudo sh /var/www/1/2.sh'); и $result = shell_exec ('/var/www/1/2.sh');

не работают

если в 2.sh прописать

echo "TEST" >> out.txt

создается файл в корне сайта.

Что не так?

---------- Добавлено 09.12.2014 в 03:07 ----------

надо выполнить sudo /etc/init.d/mysql restart в 2.sh

ТС сервер падает? Или тормозит? Если все ок то не дергайтесь и сидите ровно, начнет падать настройте по ссылке ниже, у мну сумарный траф где то 6к с 10 сайтов есть и на вп, и все работает отлично.

/ru/forum/859302

---------- Добавлено 07.12.2014 в 17:24 ----------

п.с. И то пришлось настроить только из-за того что при мелких ддосах (15к запросов на бд единоразово) падал мускуль.

maxer47, сколько хостов на сайте? Попробуйте сами зарегайтесь в спа и разместите тизеры по виду как у рекреатив и посмотрите.

Посоветуйте плагин для поиска по сайту, что находил все похожее, хоть по 1 слову из запроса.

Как вариант нацепита адсенс что то да накапает, ну и пишите правильные ключи, трафиковые, актуальные.

700к показами можно и самому арбитражить, или сливать траф на прямую арбитражнику по более выгодным ценам.

Всего: 1642