4

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;
    }
};

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

4

1 回答 1

9

答案基本上如下:

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

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

 out << "Status: 404 Not found\r\n\r\n";

在响应方法中。它不是标准的 http,但 FastCGI 只是 CGI 的一个包装器,而CGI 就是这样做的。

于 2013-01-17T20:35:18.840 回答