Fastcgi ++:如何创建404或503响应

dsi*_*ign 4 c++ fastcgi fastcgi++

Fastcgi ++是一个用于简化C++中fastcgi服务器实现的库.这是我想要做的非常简单的用例:检查文件是否存在,如果不存在,则生成一些错误消息.这是代码,寻找问号.

struct the_fastcgi_server_t: Fastcgipp::Request<char>
{

    bool response() 
    {
        using namespace Fastcgipp;

        Fastcgipp::Http::Environment<char> const &env =
            this->environment();
        // Can I resolve the file?
        std::string target_js;
        try {
            target_js = path_processor( env.scriptName );
        } catch ( file_not_found_exc_t const& e )
        {
            // TODO How do I set a standard 404 here???!!
            return true;
        }

        out << "Content-Type: text/javascript; charset=utf-8\r\n\r\n";

        // ... Here I fill the response.

        return true;
    }
};
Run Code Online (Sandbox Code Playgroud)

有关如何设置响应类型的任何想法?

dsi*_*ign 9

答案基本上如下:

https://web.archive.org/web/20160115021335/http://www.fastcgi.com/docs/faq.html#httpstatus

也就是说,使用像这样的代码片段

 out << "Status: 404 Not found\r\n\r\n";
Run Code Online (Sandbox Code Playgroud)

在响应方法中.它不是标准的http,但FastCGI只是CGI的包装器,这就是CGI如何做到的.