Я однажды делал такой проект, но решил использовать lighty вместо apache из-за того, насколько велик дистрибутив Apache.
Если вы хотите использовать Apache, взгляните на XAMPP . Он включает в себя не только Apache, но его очень легко запустить и запустить.
Поскольку моим целевым дистрибутивом была Windows, я использовал AutoIT , чтобы написать скрипт, который бы:
- запустить сервер
- запустить браузер
- выключить сервер, когда браузер был закрыт
Я скомпилировал скрипт AutoIT в исполняемый файл, и именно так мои пользователи будут запускать программу. Вы не указали свою целевую платформу. Если это mac или * nix, вы можете написать сценарий оболочки, чтобы сделать то же самое. Ключ в том, что он должен работать в фоновом режиме, ожидая закрытия браузера.
Я использовал NSIS для создания установщика, для настройки всего и создания значков в меню «Пуск».
Поскольку я пытался уменьшить размер файла и не полагаться на интернет-соединение, я использовал sqlite для своей базы данных вместо MySQL.
Я также решил распространять браузер K-Meleon с моим приложением, чтобы я всегда знал, какой браузер используют мои пользователи для взаимодействия с моим кодом.
Несколько вещей, которые вы хотите иметь в виду:
- Lighty должен быть настроен на
- используйте нестандартный порт на тот случай, если у ваших пользователей уже работает порт 80
- разрешить соединения только с локального хоста
- Возможно, вы захотите переименовать исполняемые файлы для lighty и k-meleon, чтобы вы знали, что они являются процессами, используемыми вашим приложением.
Несмотря на то, что я делал этот тип проекта раньше, я, вероятно, не буду строить что-то подобное в будущем, и я не рекомендую его в качестве метода для создания настольных приложений.
Я решил построить свое приложение таким образом, потому что скоро уйду с работы, и, поскольку я построил наш веб-сайт на PHP, я решил, что любой, кто займет мое место, будет знать PHP, а создание приложения таким образом будет убедитесь, что они могут оказать поддержку.