Простой скрипт cgi (или набор скриптов) - это все, что вам нужно для начала. В других ответах рассказывалось, как это сделать, поэтому я не буду повторять это; вместо этого я подчеркну, что использование простого текста проделает вам долгий путь . Просто выведите заголовок (print("Content-type: text/plain\n")
, плюс print добавляет собственную новую строку, чтобы получить необходимую пустую строку), а затем запустите обычную программу.
Таким образом, любой нормальный вывод вашего скрипта отправляется в браузер, и вам не нужно беспокоиться о HTML, экранировании, фреймворках и прочем. «Сделай самое простое, что могло бы сработать».
Это особенно подходит для неинтерактивных частных административных задач, которые вы описываете, и позволяет вам использовать идентичные программы из оболочки с минимумом суеты. Ваш драйвер, страница с кнопками, может быть статическим HTML-файлом с однокнопочными формами. Или даже список ссылок.
Чтобы продвинуться дальше, посмотрите на модуль ведения журнала (например, отправку сообщений INFO в браузер, но не на командную строку, или простую классификацию сообщений с помощью различных регистраторов, путем настройки ваших обработчиков), а затем начните рассматривать шаблон двигатели и каркасы.
Не выводите свой собственный HTML и переходите к использованию одной из многих существующих библиотек - это сэкономит массу головной боли, даже потратив немного дополнительного времени на изучение библиотеки. Или, по крайней мере, инкапсулируйте ваш вывод, эффективно написав свой собственный мини-движок.