jean-frederic clere wrote: > [EMAIL PROTECTED] wrote: > >>jfclere 2004/03/03 09:55:32 >> >> Modified: jk/native2/server/apache2 mod_jk2.c >> Log: >> Remove jk2_translate... It is still not 100% OK: >> - LocationMatch does not work. >> - Some _not_found ends in Tomcat when using mod_dav. > > > That is still not OK. I will go on later. Sorry :-(
Now it looks better. The only thing I have removed is the logic for mod_dir
Tomcat will do it if needed.
Cheers
Jean-Frederic
>
>
>>
>> Revision Changes Path
>> 1.72 +27 -30 jakarta-tomcat-connectors/jk/native2/server/apache2/mod_jk2.c
>>
>> Index: mod_jk2.c
>> ===================================================================
>> RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/server/apache2/mod_jk2.c,v
>> retrieving revision 1.71
>> retrieving revision 1.72
>> diff -u -r1.71 -r1.72
>> --- mod_jk2.c 3 Mar 2004 09:15:48 -0000 1.71
>> +++ mod_jk2.c 3 Mar 2004 17:55:31 -0000 1.72
>> @@ -42,7 +42,6 @@
>> */
>> static int dirCounter=0;
>>
>> -
>> #define JK_HANDLER ("jakarta-servlet2")
>> #define JK_MAGIC_TYPE ("application/x-jakarta-servlet2")
>>
>> @@ -662,9 +661,11 @@
>> int rc1;
>>
>> uriEnv=ap_get_module_config( r->request_config, &jk2_module );
>> + if (uriEnv==NULL)
>> + uriEnv=ap_get_module_config( r->per_dir_config, &jk2_module );
>>
>> /* not for me, try next handler */
>> - if(uriEnv==NULL || strcmp(r->handler,JK_HANDLER))
>> + if(uriEnv==NULL || !strcmp(r->handler,JK_HANDLER))
>> return DECLINED;
>>
>> /* If this is a proxy request, we'll notify an error */
>> @@ -854,38 +855,35 @@
>> /* bypass the directory_walk and file_walk for non-file requests */
>> static int jk2_map_to_storage(request_rec *r)
>> {
>> - jk_uriEnv_t *uriEnv=ap_get_module_config( r->request_config, &jk2_module );
>> -
>> - if( uriEnv != NULL ) {
>> -
>> - /* First find just the name of the file, no directory */
>> - r->filename = (char *)apr_filepath_name_get(r->uri);
>> + jk_uriEnv_t *uriEnv;
>> + jk_env_t *env;
>>
>> - /* Only if sub-request for a directory, most likely from mod_dir */
>> - if (r->main && r->main->filename &&
>> - !*apr_filepath_name_get(r->main->filename)){
>> -
>> - /* The filename from the main request will be set to what should
>> - * be picked up, aliases included. Tomcat will need to know about
>> - * those aliases or things won't work for them. Normal files
>> - * should be fine. */
>> -
>> - /* Need absolute path to stat */
>> - if (apr_filepath_merge(&r->filename,
>> - r->main->filename, r->filename,
>> - APR_FILEPATH_SECUREROOT |
>> - APR_FILEPATH_TRUENAME,
>> - r->pool)
>> - != APR_SUCCESS){
>> - return DECLINED; /* We should never get here, very bad */
>> - }
>> + if (r->proxyreq || workerEnv==NULL) {
>> + return DECLINED;
>> + }
>> +
>> + /* From something like [uri:/examples/STAR] in workers2.properties */
>> + env = workerEnv->globalEnv->getEnv( workerEnv->globalEnv );
>> + uriEnv=workerEnv->uriMap->mapUri(env, workerEnv->uriMap,
>> + ap_get_server_name(r),
>> + ap_get_server_port(r),
>> + r->uri);
>>
>> - /* Stat the file so that mod_dir knows it's there */
>> - apr_stat(&r->finfo, r->filename, APR_FINFO_TYPE, r->pool);
>> + if (uriEnv!=NULL && uriEnv->workerName != NULL) {
>> + ap_set_module_config( r->request_config, &jk2_module, uriEnv );
>> + r->handler=JK_HANDLER;
>> + workerEnv->globalEnv->releaseEnv( workerEnv->globalEnv, env );
>> +
>> + /* This could be a sub-request, possibly from mod_dir */
>> + if(r->main){
>> + ap_set_module_config( r->main->request_config, &jk2_module, uriEnv );
>> + r->main->handler=JK_HANDLER;
>> }
>>
>> return OK;
>> }
>> +
>> + workerEnv->globalEnv->releaseEnv( workerEnv->globalEnv, env );
>> return DECLINED;
>> }
>>
>> @@ -897,7 +895,6 @@
>> /* Force the mpm to run before us and set the scoreboard image */
>> ap_hook_child_init(jk2_child_init, NULL, NULL, APR_HOOK_LAST);
>>
>> - ap_hook_translate_name(jk2_translate, NULL, NULL, APR_HOOK_MIDDLE);
>> ap_hook_map_to_storage(jk2_map_to_storage, NULL, NULL, APR_HOOK_MIDDLE);
>> }
>>
>>
>>
>>
>>
>>---------------------------------------------------------------------
>>To unsubscribe, e-mail: [EMAIL PROTECTED]
>>For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>
>
signature.asc
Description: OpenPGP digital signature
