На C ++ есть http-сервер, который может обрабатывать запросы на динамическое содержимое c, используя php -cgi. Когда я использую php -cgi для выполнения скрипта, который не требует ввода данных, все работает. Если я создаю переменную REQUEST_METHOD, php -cgi возвращает это сообщение.
Как я понимаю, я должен создать переменную REDIRECT_STATUS и назначить это определенное значение, чтобы php -cgi мог обрабатывать данные, полученные с сервера, но какое значение следует установить? Когда я ставлю "0" или оставляю пустую строку "", интерпретатор генерирует эти ошибки
нет ничего в $ _POST, php -cgi не видит данные, передаваемые в stdin. В этом случае класс conepipe является оболочкой для системных вызовов: fork, pipe, exe c, et c ... Другими словами, он устанавливает двунаправленное соединение между процессами. stdin и stdout дочернего процесса переназначаются, а запись / вывод выполняется с использованием перегруженных операторов << / >>
int main()
{
setenv("SCRIPT_FILENAME", "/home/anton/Cone_SERVER/serverFILES/test.php", 1);
setenv("REQUEST_METHOD", "POST", 1);
setenv("REDIRECT_STATUS", "", 1);
conepipe a("php-cgi");
string msg = "first=5&operation=+&second=10&submit=Submit";
string buf;
a << buf;
a >> buf;
std::cout <<buf;
return 0;
}