Return-Path: X-Original-To: apmail-httpd-modules-dev-archive@minotaur.apache.org Delivered-To: apmail-httpd-modules-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 52216995E for ; Mon, 11 Jun 2012 18:37:43 +0000 (UTC) Received: (qmail 29193 invoked by uid 500); 11 Jun 2012 18:37:43 -0000 Delivered-To: apmail-httpd-modules-dev-archive@httpd.apache.org Received: (qmail 29120 invoked by uid 500); 11 Jun 2012 18:37:42 -0000 Mailing-List: contact modules-dev-help@httpd.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: modules-dev@httpd.apache.org Delivered-To: mailing list modules-dev@httpd.apache.org Received: (qmail 29105 invoked by uid 99); 11 Jun 2012 18:37:42 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 11 Jun 2012 18:37:42 +0000 X-ASF-Spam-Status: No, hits=0.2 required=5.0 tests=FREEMAIL_ENVFROM_END_DIGIT,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of apocalypse17@gmx.de designates 213.165.64.22 as permitted sender) Received: from [213.165.64.22] (HELO mailout-de.gmx.net) (213.165.64.22) by apache.org (qpsmtpd/0.29) with SMTP; Mon, 11 Jun 2012 18:37:35 +0000 Received: (qmail 29470 invoked by uid 0); 11 Jun 2012 18:37:15 -0000 Received: from 78.35.173.93 by www050.gmx.net with HTTP; Mon, 11 Jun 2012 20:37:12 +0200 (CEST) Content-Type: text/plain; charset="utf-8" Date: Mon, 11 Jun 2012 20:37:12 +0200 From: "Marc apocalypse17" In-Reply-To: <4FCD320F.3060307@cord.dk> Message-ID: <20120611183712.192880@gmx.net> MIME-Version: 1.0 References: <20120604205306.183060@gmx.net> <4FCD320F.3060307@cord.dk> Subject: Re: Change Request-Header before mod_rewrite To: modules-dev@httpd.apache.org X-Authenticated: #2236243 X-Flags: 0001 X-Mailer: WWW-Mail 6100 (Global Message Exchange) X-Priority: 3 X-Provags-ID: V01U2FsdGVkX18qQFtzl2IqKH0WStZaSg2oGwGiSoi8E78W9Odo+L 0MSShCwxzQ9AHJiZ08wr4/kk0b/+5Eh5Twlg== Content-Transfer-Encoding: 8bit X-GMX-UID: j1+kbzwqeSEqVTJ8SXQhYzp+IGRvb8Am Thank you very much! That worked fine for me. Now I got another problem. If I enable my module and call it up with "localhost" in my browser a 404 is returned although there is a index.html in the root directory of the webserver. If I disable my module and call it up with "localhost" the index.html ist presented in the browser. So whats the problem with my module? The configuration of my module is the following: SetHandler example-handler -------- Original-Nachricht -------- > Datum: Tue, 05 Jun 2012 00:09:19 +0200 > Von: Daniel Gruno > An: modules-dev@httpd.apache.org > Betreff: Re: Change Request-Header before mod_rewrite > On 06/04/2012 10:53 PM, Marc apocalypse17 wrote: > > Hi all, > > > > I just developed my first apache module following the tutorial on the > apache website. The module is responsible for adding one header value to the > active request which must be checked in a mod_rewrite ReWriteCondition. > > The problem is, that this value never reaches the mod_rewrite Rule. The > Header just behaves the same as the original request. Does anyone know why? > What am I doing wrong? > > > > My module looks like this: > > > > static int helloworld_handler(request_rec* r){ > > if (!r->main) { > > apr_table_setn(r->headers_in, "X-CUSTOM-HEADER", "1"); > > } > > return DECLINED; > > } > > > > static void register_hooks(apr_pool_t* pool){ > > ap_hook_handler(helloworld_handler, NULL, NULL, APR_HOOK_FIRST); > > } > > > > module AP_MODULE_DECLARE_DATA helloworld_module = { > > STANDARD20_MODULE_STUFF, > > NULL, > > NULL, > > NULL, > > NULL, > > example_directives, > > register_hooks > > }; > > > > The .htacces file looks like this: > > > > RewriteEngine on > > RewriteCond %{HTTP:X-CUSTOM-HEADER} 1 [NC] > > RewriteRule from.html to.html > > > > The Rewrite-Rule is never executes fine. It always show the content of > from.html. > > > > > > Thank you in advance, > > Marc > > > As Ben said, mod_rewrite is invoked far earlier than your handler > (handlers are invoked last), since it hooks onto the translation part of > the http process. If you intend for your module to do the same, you > change your hook function accordingly: > > static void register_hooks(apr_pool_t* pool){ > ap_hook_translate_name(helloworld_handler, NULL, NULL, > APR_HOOK_FIRST-1); > } > > > This will eventually be covered by the module guide in the docs (as soon > as I get some time off to write it) > > With regards, > Daniel. -- Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de