亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? httpd.h

?? Apache_2.0.59-Openssl_0.9 配置tomcat. Apache_2.0.59-Openssl_0.9 配置tomcat.
?? H
?? 第 1 頁 / 共 5 頁
字號:
    /** The virtual host for this request */
    server_rec *server;

    /** Pointer to the redirected request if this is an external redirect */
    request_rec *next;
    /** Pointer to the previous request if this is an internal redirect */
    request_rec *prev;

    /** Pointer to the main request if this is a sub-request
     * (see http_request.h) */
    request_rec *main;

    /* Info about the request itself... we begin with stuff that only
     * protocol.c should ever touch...
     */
    /** First line of request */
    char *the_request;
    /** HTTP/0.9, "simple" request (e.g. GET /foo\n w/no headers) */
    int assbackwards;
    /** A proxy request (calculated during post_read_request/translate_name)
     *  possible values PROXYREQ_NONE, PROXYREQ_PROXY, PROXYREQ_REVERSE,
     *                  PROXYREQ_RESPONSE
     */
    int proxyreq;
    /** HEAD request, as opposed to GET */
    int header_only;
    /** Protocol string, as given to us, or HTTP/0.9 */
    char *protocol;
    /** Protocol version number of protocol; 1.1 = 1001 */
    int proto_num;
    /** Host, as set by full URI or Host: */
    const char *hostname;

    /** Time when the request started */
    apr_time_t request_time;

    /** Status line, if set by script */
    const char *status_line;
    /** Status line */
    int status;

    /* Request method, two ways; also, protocol, etc..  Outside of protocol.c,
     * look, but don't touch.
     */

    /** Request method (eg. GET, HEAD, POST, etc.) */
    const char *method;
    /** M_GET, M_POST, etc. */
    int method_number;

    /**
     *  'allowed' is a bitvector of the allowed methods.
     *
     *  A handler must ensure that the request method is one that
     *  it is capable of handling.  Generally modules should DECLINE
     *  any request methods they do not handle.  Prior to aborting the
     *  handler like this the handler should set r->allowed to the list
     *  of methods that it is willing to handle.  This bitvector is used
     *  to construct the "Allow:" header required for OPTIONS requests,
     *  and HTTP_METHOD_NOT_ALLOWED and HTTP_NOT_IMPLEMENTED status codes.
     *
     *  Since the default_handler deals with OPTIONS, all modules can
     *  usually decline to deal with OPTIONS.  TRACE is always allowed,
     *  modules don't need to set it explicitly.
     *
     *  Since the default_handler will always handle a GET, a
     *  module which does *not* implement GET should probably return
     *  HTTP_METHOD_NOT_ALLOWED.  Unfortunately this means that a Script GET
     *  handler can't be installed by mod_actions.
     */
    apr_int64_t allowed;
    /** Array of extension methods */
    apr_array_header_t *allowed_xmethods; 
    /** List of allowed methods */
    ap_method_list_t *allowed_methods; 

    /** byte count in stream is for body */
    apr_off_t sent_bodyct;
    /** body byte count, for easy access */
    apr_off_t bytes_sent;
    /** Last modified time of the requested resource */
    apr_time_t mtime;

    /* HTTP/1.1 connection-level features */

    /** sending chunked transfer-coding */
    int chunked;
    /** The Range: header */
    const char *range;
    /** The "real" content length */
    apr_off_t clength;

    /** Remaining bytes left to read from the request body */
    apr_off_t remaining;
    /** Number of bytes that have been read  from the request body */
    apr_off_t read_length;
    /** Method for reading the request body
     * (eg. REQUEST_CHUNKED_ERROR, REQUEST_NO_BODY,
     *  REQUEST_CHUNKED_DECHUNK, etc...) */
    int read_body;
    /** reading chunked transfer-coding */
    int read_chunked;
    /** is client waiting for a 100 response? */
    unsigned expecting_100;

    /* MIME header environments, in and out.  Also, an array containing
     * environment variables to be passed to subprocesses, so people can
     * write modules to add to that environment.
     *
     * The difference between headers_out and err_headers_out is that the
     * latter are printed even on error, and persist across internal redirects
     * (so the headers printed for ErrorDocument handlers will have them).
     *
     * The 'notes' apr_table_t is for notes from one module to another, with no
     * other set purpose in mind...
     */

    /** MIME header environment from the request */
    apr_table_t *headers_in;
    /** MIME header environment for the response */
    apr_table_t *headers_out;
    /** MIME header environment for the response, printed even on errors and
     * persist across internal redirects */
    apr_table_t *err_headers_out;
    /** Array of environment variables to be used for sub processes */
    apr_table_t *subprocess_env;
    /** Notes from one module to another */
    apr_table_t *notes;

    /* content_type, handler, content_encoding, and all content_languages 
     * MUST be lowercased strings.  They may be pointers to static strings;
     * they should not be modified in place.
     */
    /** The content-type for the current request */
    const char *content_type;	/* Break these out --- we dispatch on 'em */
    /** The handler string that we use to call a handler function */
    const char *handler;	/* What we *really* dispatch on */

    /** How to encode the data */
    const char *content_encoding;
    /** Array of strings representing the content languages */
    apr_array_header_t *content_languages;

    /** variant list validator (if negotiated) */
    char *vlist_validator;
    
    /** If an authentication check was made, this gets set to the user name. */
    char *user;	
    /** If an authentication check was made, this gets set to the auth type. */
    char *ap_auth_type;

    /** This response can not be cached */
    int no_cache;
    /** There is no local copy of this response */
    int no_local_copy;

    /* What object is being requested (either directly, or via include
     * or content-negotiation mapping).
     */

    /** The URI without any parsing performed */
    char *unparsed_uri;	
    /** The path portion of the URI */
    char *uri;
    /** The filename on disk corresponding to this response */
    char *filename;
    /* XXX: What does this mean? Please define "canonicalize" -aaron */
    /** The true filename, we canonicalize r->filename if these don't match */
    char *canonical_filename;
    /** The PATH_INFO extracted from this request */
    char *path_info;
    /** The QUERY_ARGS extracted from this request */
    char *args;	
    /**  finfo.protection (st_mode) set to zero if no such file */
    apr_finfo_t finfo;
    /** A struct containing the components of URI */
    apr_uri_t parsed_uri;

    /**
     * Flag for the handler to accept or reject path_info on 
     * the current request.  All modules should respect the
     * AP_REQ_ACCEPT_PATH_INFO and AP_REQ_REJECT_PATH_INFO 
     * values, while AP_REQ_DEFAULT_PATH_INFO indicates they
     * may follow existing conventions.  This is set to the
     * user's preference upon HOOK_VERY_FIRST of the fixups.
     */
    int used_path_info;

    /* Various other config info which may change with .htaccess files
     * These are config vectors, with one void* pointer for each module
     * (the thing pointed to being the module's business).
     */

    /** Options set in config files, etc. */
    struct ap_conf_vector_t *per_dir_config;
    /** Notes on *this* request */
    struct ap_conf_vector_t *request_config;

    /**
     * A linked list of the .htaccess configuration directives
     * accessed by this request.
     * N.B. always add to the head of the list, _never_ to the end.
     * that way, a sub request's list can (temporarily) point to a parent's list
     */
    const struct htaccess_result *htaccess;

    /** A list of output filters to be used for this request */
    struct ap_filter_t *output_filters;
    /** A list of input filters to be used for this request */
    struct ap_filter_t *input_filters;

    /** A list of protocol level output filters to be used for this
     *  request */
    struct ap_filter_t *proto_output_filters;
    /** A list of protocol level input filters to be used for this
     *  request */
    struct ap_filter_t *proto_input_filters;

    /** A flag to determine if the eos bucket has been sent yet */
    int eos_sent;

/* Things placed at the end of the record to avoid breaking binary
 * compatibility.  It would be nice to remember to reorder the entire
 * record to improve 64bit alignment the next time we need to break
 * binary compatibility for some other reason.
 */
};

/**
 * @defgroup ProxyReq Proxy request types
 *
 * Possible values of request_rec->proxyreq. A request could be normal,
 *  proxied or reverse proxied. Normally proxied and reverse proxied are
 *  grouped together as just "proxied", but sometimes it's necessary to
 *  tell the difference between the two, such as for authentication.
 * @{
 */

#define PROXYREQ_NONE 0		/**< No proxy */
#define PROXYREQ_PROXY 1	/**< Standard proxy */
#define PROXYREQ_REVERSE 2	/**< Reverse proxy */
#define PROXYREQ_RESPONSE 3 /**< Origin response */

/* @} */

typedef enum {
    AP_CONN_UNKNOWN,
    AP_CONN_CLOSE,
    AP_CONN_KEEPALIVE
} ap_conn_keepalive_e;

/** Structure to store things which are per connection */
struct conn_rec {
    /** Pool associated with this connection */
    apr_pool_t *pool;
    /** Physical vhost this conn came in on */
    server_rec *base_server;
    /** used by http_vhost.c */
    void *vhost_lookup_data;

    /* Information about the connection itself */
    /** local address */
    apr_sockaddr_t *local_addr;
    /** remote address */
    apr_sockaddr_t *remote_addr;

    /** Client's IP address */
    char *remote_ip;
    /** Client's DNS name, if known.  NULL if DNS hasn't been checked,
     *  "" if it has and no address was found.  N.B. Only access this though
     * get_remote_host() */
    char *remote_host;
    /** Only ever set if doing rfc1413 lookups.  N.B. Only access this through
     *  get_remote_logname() */
    char *remote_logname;

    /** Are we still talking? */
    unsigned aborted:1;

    /** Are we going to keep the connection alive for another request?
     * @see ap_conn_keepalive_e */
    ap_conn_keepalive_e keepalive;

    /** have we done double-reverse DNS? -1 yes/failure, 0 not yet, 
     *  1 yes/success */
    signed int double_reverse:2;

    /** How many times have we used it? */
    int keepalives;
    /** server IP address */
    char *local_ip;
    /** used for ap_get_server_name when UseCanonicalName is set to DNS
     *  (ignores setting of HostnameLookups) */
    char *local_host;

    /** ID of this connection; unique at any point in time */
    long id; 
    /** Config vector containing pointers to connections per-server
     *  config structures. */
    struct ap_conf_vector_t *conn_config;
    /** Notes on *this* connection: send note from one module to
     *  another. must remain valid for all requests on this conn */
    apr_table_t *notes;
    /** A list of input filters to be used for this connection */
    struct ap_filter_t *input_filters;
    /** A list of output filters to be used for this connection */
    struct ap_filter_t *output_filters;
    /** handle to scoreboard information for this connection */
    void *sbh;
    /** The bucket allocator to use for all bucket/brigade creations */
    struct apr_bucket_alloc_t *bucket_alloc;
};

/* Per-vhost config... */

/**
 * The address 255.255.255.255, when used as a virtualhost address,
 * will become the "default" server when the ip doesn't match other vhosts.
 */
#define DEFAULT_VHOST_ADDR 0xfffffffful


/** A structure to be used for Per-vhost config */
typedef struct server_addr_rec server_addr_rec;
struct server_addr_rec {
    /** The next server in the list */
    server_addr_rec *next;
    /** The bound address, for this server */
    apr_sockaddr_t *host_addr;
    /** The bound port, for this server */
    apr_port_t host_port;
    /** The name given in <VirtualHost> */
    char *virthost;
};

/** A structure to store information for each virtual server */
struct server_rec {
    /** The process this server is running in */
    process_rec *process;
    /** The next server in the list */
    server_rec *next;

    /** The name of the server */
    const char *defn_name;
    /** The line of the config file that the server was defined on */
    unsigned defn_line_number;

    /* Contact information */

    /** The admin's contact information */
    char *server_admin;
    /** The server hostname */
    char *server_hostname;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产传媒一区在线| 色综合久久久久网| 一区二区在线观看视频| 精品欧美乱码久久久久久| 91欧美一区二区| 国产精品一区二区视频| 亚洲va中文字幕| 综合亚洲深深色噜噜狠狠网站| 日韩一区二区麻豆国产| 色视频欧美一区二区三区| 国产精品资源在线| 秋霞av亚洲一区二区三| 一区二区高清视频在线观看| 国产日韩一级二级三级| 欧美成人乱码一区二区三区| 欧美老女人在线| 色综合色综合色综合色综合色综合 | 日韩精品一区国产麻豆| 欧美午夜精品一区二区三区 | 91免费视频网| 成人丝袜18视频在线观看| 久久精品国产成人一区二区三区| 亚洲国产毛片aaaaa无费看| 亚洲美女精品一区| 亚洲欧美日韩在线| 亚洲黄色小视频| 一区视频在线播放| 亚洲欧洲韩国日本视频| 国产精品人妖ts系列视频| 久久综合狠狠综合久久激情| 欧美精品一区二区三区四区| 日韩一区二区三区在线观看| 欧美一级二级三级乱码| 精品视频在线免费观看| 在线观看日韩av先锋影音电影院| 91免费看`日韩一区二区| 99精品欧美一区二区三区综合在线| 不卡一区二区中文字幕| www.亚洲免费av| 99re这里只有精品6| 91在线视频免费观看| 色噜噜狠狠成人中文综合| 色婷婷综合久久| 欧美三级在线视频| 欧美一区二区三区免费在线看| 91麻豆精品国产自产在线| 日韩精品影音先锋| 久久婷婷综合激情| 国产精品理伦片| 一区二区三区在线高清| 亚洲成a人在线观看| 蜜臀av在线播放一区二区三区| 琪琪一区二区三区| 国产一本一道久久香蕉| 波多野结衣91| 欧美三级视频在线观看| 91精品国产一区二区三区香蕉| 91精品国产日韩91久久久久久| 亚洲欧美在线视频观看| 亚洲欧美日韩在线| 无码av中文一区二区三区桃花岛| 久久66热re国产| 成人美女视频在线看| 在线视频你懂得一区| 欧美一级二级三级蜜桃| 久久久久国产精品麻豆| 亚洲免费观看高清完整| 日韩精品午夜视频| 国产91精品在线观看| 在线观看免费成人| 日韩欧美亚洲国产精品字幕久久久 | 麻豆精品一区二区三区| 丰满岳乱妇一区二区三区| 色综合天天在线| 日韩欧美中文一区二区| 国产精品麻豆一区二区| 日韩中文字幕av电影| 国产成人免费视频一区| 欧美性大战久久久久久久| 久久伊人蜜桃av一区二区| 亚洲乱码中文字幕| 久久国产精品99精品国产| 99久久免费视频.com| 欧美成人一级视频| 一区二区三区四区不卡在线| 久久电影网电视剧免费观看| 色噜噜狠狠色综合中国| 2021久久国产精品不只是精品| 夜夜爽夜夜爽精品视频| 国产精品一区二区不卡| 欧美片在线播放| 成人欧美一区二区三区1314| 免费人成网站在线观看欧美高清| 成人黄色av电影| 欧美xfplay| 性做久久久久久免费观看 | 欧美三电影在线| 日本一区二区成人在线| 美女一区二区久久| 91高清视频免费看| 国产精品久久久久国产精品日日| 男人的天堂久久精品| 欧美性videosxxxxx| 亚洲欧洲日本在线| 国产精品一区二区在线观看不卡| 555夜色666亚洲国产免| 亚洲一区二区综合| 色悠久久久久综合欧美99| 中文子幕无线码一区tr| 久久不见久久见免费视频1| 欧美人成免费网站| 亚洲国产另类av| 色噜噜狠狠色综合欧洲selulu| 欧美激情一区二区三区| 韩国欧美一区二区| 欧美成人女星排名| 麻豆精品一区二区三区| 91精品国产91热久久久做人人| 亚洲影院久久精品| 在线视频亚洲一区| 亚洲影视在线播放| 在线视频你懂得一区二区三区| 一区在线中文字幕| 99久久精品免费| 亚洲欧美偷拍三级| 成av人片一区二区| 亚洲视频网在线直播| 91一区一区三区| 日韩电影免费在线观看网站| 欧美另类变人与禽xxxxx| 亚洲综合丝袜美腿| 欧美日韩免费一区二区三区| 亚洲高清免费观看| 欧美电影影音先锋| 丝袜脚交一区二区| 777久久久精品| 老司机精品视频线观看86| 日韩一区二区三区视频在线观看 | 一区二区三区精品视频在线| 色欧美日韩亚洲| 亚洲成人自拍网| 555www色欧美视频| 免费人成黄页网站在线一区二区| 日韩一级成人av| 国产一区亚洲一区| 国产欧美精品一区| 99久久精品免费| 一区二区三区资源| 欧美浪妇xxxx高跟鞋交| 日本欧美在线观看| 久久久久久久久久久黄色| 丁香婷婷综合五月| 一区二区三区高清不卡| 欧美一区二区视频观看视频| 久久精品国产第一区二区三区| 久久综合久色欧美综合狠狠| 国产传媒日韩欧美成人| 亚洲少妇30p| 在线不卡一区二区| 国产激情偷乱视频一区二区三区| 日本一区二区三级电影在线观看| 91麻豆国产自产在线观看| 天堂av在线一区| 国产视频911| 欧美色综合影院| 国产在线国偷精品免费看| 国产精品免费人成网站| 欧美日韩高清一区二区三区| 精品一区二区三区在线视频| 国产精品久久久久久久久免费桃花 | 色老汉av一区二区三区| 视频一区视频二区中文字幕| 久久免费电影网| 欧美在线|欧美| 国产在线播放一区三区四| 亚洲人午夜精品天堂一二香蕉| 777久久久精品| 丁香激情综合五月| 视频一区视频二区在线观看| 久久精品日产第一区二区三区高清版 | 亚洲免费视频中文字幕| 日韩一区二区三区视频在线| 成人久久视频在线观看| 日本中文字幕一区| 亚洲人成影院在线观看| 日韩欧美一区二区免费| 色av成人天堂桃色av| 国产一区二区三区高清播放| 亚洲二区视频在线| 国产精品高潮久久久久无| 国产精品久久毛片| 欧美一级艳片视频免费观看| 91一区二区三区在线播放| 国内精品第一页| 亚洲v精品v日韩v欧美v专区 | 天天操天天色综合| 中文字幕在线播放不卡一区| 精品国产sm最大网站免费看| 欧美精品vⅰdeose4hd| 91在线观看免费视频|