Changes with Apache 2.0.48
+ *) mod_rewrite: Fix mod_rewrite's support of the [P] option to send
+ rewritten request using "proxy:". The code was adding multiple "proxy:"
+ fields in the rewritten URI. PR: 13946. [Eider Oliveira <eider@bol.com.br>]
+
*) cache_util: Fix ap_check_cache_freshness to check max_age, smax_age, and
expires as directed in RFC 2616. [Thomas Castelle tcastelle@generali.fr]
APACHE 2.0 STATUS: -*-text-*-
-Last modified at [$Date: 2003/09/29 21:09:46 $]
+Last modified at [$Date: 2003/09/30 17:41:58 $]
Release:
http://cvs.apache.org/viewcvs.cgi/httpd-2.0/modules/experimental/mod_mem_cache.c.diff?r1=1.93&r2=1.94
+1: rederpj, fielding, trawick
- * mod_rewrite.c: Fix mod_rewrite's support of the [P] option to send
- rewritten request using "proxy:". The code was adding multiple "proxy:"
- fields in the rewritten URI. PR: 13946.
- http://cvs.apache.org/viewcvs.cgi/httpd-2.0/modules/mappers/mod_rewrite.c.diff?r1=1.153&r2=1.154
- http://cvs.apache.org/viewcvs.cgi/httpd-2.0/modules/mappers/mod_rewrite.c.diff?r1=1.154&r2=1.155
- http://cvs.apache.org/viewcvs.cgi/httpd-2.0/modules/mappers/mod_rewrite.c.diff?r1=1.156&r2=1.157
- http://cvs.apache.org/viewcvs.cgi/httpd-2.0/modules/mappers/mod_rewrite.c.diff?r1=1.173&r2=1.174
- +1: rederpj, nd, trawick, fielding
-
* Replace some of the mutex locking in the worker MPM with
atomic operations for higher concurrency.
server/mpm/worker/fdqueue.c 1.24, 1.25
static int hook_uri2file(request_rec *r)
{
rewrite_server_conf *conf;
+ const char *saved_rulestatus;
const char *var;
const char *thisserver;
char *thisport;
thisurl, NULL);
apr_table_setn(r->subprocess_env, ENVVAR_SCRIPT_URI, var);
- /* if filename was not initially set,
- * we start with the requested URI
- */
- if (r->filename == NULL) {
- r->filename = apr_pstrdup(r->pool, r->uri);
- rewritelog(r, 2, "init rewrite engine with requested uri %s",
- r->filename);
+ if (!(saved_rulestatus = apr_table_get(r->notes,"mod_rewrite_rewritten"))) {
+ /* if filename was not initially set,
+ * we start with the requested URI
+ */
+ if (r->filename == NULL) {
+ r->filename = apr_pstrdup(r->pool, r->uri);
+ rewritelog(r, 2, "init rewrite engine with requested uri %s",
+ r->filename);
+ }
+ else {
+ rewritelog(r, 2, "init rewrite engine with passed filename %s."
+ " Original uri = %s", r->filename, r->uri);
+ }
+
+ /*
+ * now apply the rules ...
+ */
+ rulestatus = apply_rewrite_list(r, conf->rewriterules, NULL);
+ apr_table_set(r->notes,"mod_rewrite_rewritten",
+ apr_psprintf(r->pool,"%d",rulestatus));
+ }
+ else {
+ rewritelog(r, 2,
+ "uri already rewritten. Status %s, Uri %s, r->filename %s",
+ saved_rulestatus, r->uri, r->filename);
+ rulestatus = atoi(saved_rulestatus);
}
- /*
- * now apply the rules ...
- */
- rulestatus = apply_rewrite_list(r, conf->rewriterules, NULL);
if (rulestatus) {
unsigned skip;