comparison src/http/ngx_http_variables.c @ 2011:b56d4b1ebac7

$hostname variable
author Igor Sysoev <igor@sysoev.ru>
date Fri, 16 May 2008 14:39:06 +0000
parents b9de93d804ea
children 2a92804f4109 8e4450668968
comparison
equal deleted inserted replaced
2010:bd6cc5370fc1 2011:b56d4b1ebac7
72 ngx_http_variable_value_t *v, uintptr_t data); 72 ngx_http_variable_value_t *v, uintptr_t data);
73 static ngx_int_t ngx_http_variable_sent_transfer_encoding(ngx_http_request_t *r, 73 static ngx_int_t ngx_http_variable_sent_transfer_encoding(ngx_http_request_t *r,
74 ngx_http_variable_value_t *v, uintptr_t data); 74 ngx_http_variable_value_t *v, uintptr_t data);
75 75
76 static ngx_int_t ngx_http_variable_nginx_version(ngx_http_request_t *r, 76 static ngx_int_t ngx_http_variable_nginx_version(ngx_http_request_t *r,
77 ngx_http_variable_value_t *v, uintptr_t data);
78 static ngx_int_t ngx_http_variable_hostname(ngx_http_request_t *r,
77 ngx_http_variable_value_t *v, uintptr_t data); 79 ngx_http_variable_value_t *v, uintptr_t data);
78 80
79 /* 81 /*
80 * TODO: 82 * TODO:
81 * Apache CGI: AUTH_TYPE, PATH_INFO (null), PATH_TRANSLATED 83 * Apache CGI: AUTH_TYPE, PATH_INFO (null), PATH_TRANSLATED
219 NGX_HTTP_VAR_CHANGEABLE|NGX_HTTP_VAR_NOCACHEABLE, 0 }, 221 NGX_HTTP_VAR_CHANGEABLE|NGX_HTTP_VAR_NOCACHEABLE, 0 },
220 222
221 { ngx_string("nginx_version"), NULL, ngx_http_variable_nginx_version, 223 { ngx_string("nginx_version"), NULL, ngx_http_variable_nginx_version,
222 0, 0, 0 }, 224 0, 0, 0 },
223 225
226 { ngx_string("hostname"), NULL, ngx_http_variable_hostname,
227 0, 0, 0 },
228
224 { ngx_null_string, NULL, NULL, 0, 0, 0 } 229 { ngx_null_string, NULL, NULL, 0, 0, 0 }
225 }; 230 };
226 231
227 232
228 ngx_http_variable_value_t ngx_http_variable_null_value = 233 ngx_http_variable_value_t ngx_http_variable_null_value =
1270 1275
1271 return NGX_OK; 1276 return NGX_OK;
1272 } 1277 }
1273 1278
1274 1279
1280 static ngx_int_t
1281 ngx_http_variable_hostname(ngx_http_request_t *r,
1282 ngx_http_variable_value_t *v, uintptr_t data)
1283 {
1284 v->len = ngx_cycle->hostname.len;
1285 v->valid = 1;
1286 v->no_cacheable = 0;
1287 v->not_found = 0;
1288 v->data = ngx_cycle->hostname.data;
1289
1290 return NGX_OK;
1291 }
1292
1293
1275 ngx_int_t 1294 ngx_int_t
1276 ngx_http_variables_add_core_vars(ngx_conf_t *cf) 1295 ngx_http_variables_add_core_vars(ngx_conf_t *cf)
1277 { 1296 {
1278 ngx_int_t rc; 1297 ngx_int_t rc;
1279 ngx_http_variable_t *v; 1298 ngx_http_variable_t *v;