PDA

Просмотр полной версии : Помогите с Apache+PHP+MySQL


Archie
06.02.2005, 11:54
Столкнулся с такой задачей.
Надо реализовать такую систему: С компьютера пользователя с web-страницы посылается команда на сервер Apache, который запускает программу для связи с Cisco 2500. Запрос пользователя отправляется в базу данных, а от туда на Cisco. Ответ от маршрутизатора идет пользователю, который отправил этот запрос.
Оборудование: локальная сеть (компов 5-10), сервер с Cisco 2513.

Hubbitus
09.02.2005, 02:33
Archie:
С компьютера пользователя с web-страницы посылается команда на сервер Apache
Простой GET или POST запрос.
Archie:
который запускает программу для связи с Cisco 2500.
Ну на PHP запуск любой программы exec(), system()... и еже с ними, отличия и подробности в МАНе.
Archie:
Запрос пользователя отправляется в базу данных, а от туда на Cisco.
В базу данных несложно заносится, простой SQL. Только вот на Циску не "оттуда", тоесть из БД, а паралельно, на PHP шлите запрос.
Archie:
Ответ от маршрутизатора идет пользователю, который отправил этот запрос.
Ну а ответ выводим на WEB-страницу, скоторой пользователь и запросил.

Тоесть вся сложность получается в "общении" с Циской, но тут и не объяснялось что именно и какие ответы нужны...

Archie
09.02.2005, 10:39
Надо сделать, чтоб не все команды проходили на циску. Для этого я и думал использовать базу данных.

Как можно запрос передавать консольной программе?

Sheryld
09.02.2005, 12:13
тогда наверное на кроне должна висеть программа, которая:

1. умеет извлекать из бд информацию.
2. создавать командную строку, типа:

./ciscoconsole --params, где params это будет извлеченный и обработанный запрос.

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

но можно наверное обойтись и одной только программой без shell-скриптов, да и вообще без бд можно обойтись.

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

Hubbitus
09.02.2005, 13:11
Archie:
Надо сделать, чтоб не все команды проходили на циску. Для этого я и думал использовать базу данных.
Ну дак всю логику, в том числе принятие решения об отправке запроса и работу с БД можно возложить на PHP.
Archie:
Как можно запрос передавать консольной программе?
Что значит "передавать запрос"? Можно использовать указатели процессов: popen(), fgets(), fgetss(), fputs()...
Но вообще, я думаю, достаточно простого выполнения программки или скрипта определенного с правильно сформированными параметрами, как я и говорил, это делать можно с помощью exec(), system() и других.