Запустите PHP-скрипт (с MYSQL) на ЛАМПЕ при выключении / перезагрузке - PullRequest
1 голос
/ 10 ноября 2010

Мне нужно выполнить скрипт PHP при выключении / перезагрузке LAMP.Сценарий обновит состояние локального сервера в базах данных Mysql, работающих на удаленных серверах.

<?php
print "Updating Hosts...";
mysql_connect('localhost','ivo','andream');
mysql_select_db('ecom');
$query = "SELECT * FROM companies"; 
$result=mysql_query($query);
$num=mysql_num_rows($result);
$i=0;
while ($i < $num) {
    $remote=mysql_result($result,$i,"sito");
    $remdbport=mysql_result($result,$i,"dbport");
    $remhost = ''.$remote.':'.$remdbport.'';
    $remdb=mysql_result($result,$i,"database");
    $remusr=mysql_result($result,$i,"remusr");
    $rempswd=mysql_result($result,$i,"rempswd");
    $rconnect=mysql_connect($remhost,$remusr,$rempswd);
    mysql_select_db($remdb,$rconnect);
    $query = "UPDATE lareaclient SET serverstate = '0' WHERE kiave = 'workarea'";   
    $resultloop=mysql_query($query);
        mysql_close($rconnect);
    $i++;
}
mysql_close();
print "Hosts updating complete";
?>

Сценарий работает хорошо при запуске на CLI следующим образом:

root@server:/home/mylamp# lynx -dump https://ecom.anys.info/private/serverstatedown.php

, но, похожене работать при выключении или перезагрузке.Я включил один и тот же CLI в сценарий bash на обоих уровнях запуска 0 и 6 с

root@server:/home/mylamp# update-rc.d apache1 start 01 0 6 

, но ничего не происходит.
Моя идея заключается в том, что служба Mysql останавливается до выполнения сценария PHP.Это неправильно?Есть идеи?

1 Ответ

0 голосов
/ 10 ноября 2010

Вы можете запустить скрипт из оболочки, добавив

#!/usr/bin/php

в начало скрипта;а затем запустите его через cron:

@reboot root /path/to/apache1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...