Upstart консоли Yii дает мне ошибку

Я пытаюсь запустить бэкэнд-процесс и столкнулся с проблемой, заставив выскочки запустить команду yiic.

Я использую сервер xampp

Вот мой сценарий выскочки:

#description     "Sample upstart"
#start on stopped
start on startup
stop on shutdown
respawn

chdir /opt/lampp/htdocs/my_project/protected
setuid mad
setgid www-data

script
exec /opt/lampp/htdocs/my_project/protected/yiic project test
end script

Поэтому, когда я делаю

sudo start test-monitor

запуск начинается, и кажется, что он запускает команду для проекта yii, поскольку в файле журнала yii обнаружена ошибка. Ошибка в файле журнала yii:

2014/10/31 15:06:44 [error] [worker.*] CDbConnection failed to open the DB connection: could not find driver
2014/10/31 15:06:44 [error] [worker.*] CDbConnection failed to open the DB connection: could not find driver
2014/10/31 15:06:44 [error] [worker.*] CDbConnection failed to open the DB connection: could not find driver
2014/10/31 15:06:44 [error] [worker.*] CDbConnection failed to open the DB connection: could not find driver

Однако, если я делаю команду вручную:

./ тест проекта

Это работает нормально. Может кто-нибудь, пожалуйста, помогите мне.

Вот коды для команды консоли yii:

public function actionTest(){
try{
while(1){
TestManager::_MonitorTest();
usleep(1000000);
}
}catch(Exception $e){
Yii::log( $e->getMessage(), 'error', 'worker.*');
}
}

Вот файл журнала выскочки (это не тот случай, когда я вынул sudo):

sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified

Mysql соединение работает нормально, и я проверил его

0

Решение

После некоторых настойчивых попыток и некоторой конфигурации мне удалось решить проблему.

Поскольку сервер был сервером xampp, php устанавливается в xampp, поэтому существует проблема с окружением. Таким образом, каталог bin в php должен быть указан в upstart как таковой:

Это было решение в сценарии выскочки:

script
exec /opt/lampp/bin/php -f /opt/lampp/htdocs/my_project/protected/yiic.php project test
end script
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]