diff --git a/src/ngx_rewrite_driver_factory.cc b/src/ngx_rewrite_driver_factory.cc index a6acc8b605..8b68456b88 100644 --- a/src/ngx_rewrite_driver_factory.cc +++ b/src/ngx_rewrite_driver_factory.cc @@ -147,10 +147,19 @@ NamedLockManager* NgxRewriteDriverFactory::DefaultLockManager() { RewriteOptions* NgxRewriteDriverFactory::NewRewriteOptions() { NgxRewriteOptions* options = new NgxRewriteOptions(thread_system()); + // TODO(jefftk): figure out why using SetDefaultRewriteLevel like + // mod_pagespeed does in mod_instaweb.cc:create_dir_config() isn't enough here + // -- if you use that instead then ngx_pagespeed doesn't actually end up + // defaulting CoreFilters. + // See: https://github.com/pagespeed/ngx_pagespeed/issues/1190 options->SetRewriteLevel(RewriteOptions::kCoreFilters); return options; } +RewriteOptions* NgxRewriteDriverFactory::NewRewriteOptionsForQuery() { + return new NgxRewriteOptions(thread_system()); +} + bool NgxRewriteDriverFactory::CheckResolver() { if (use_native_fetcher_ && resolver_ == NULL) { return false; diff --git a/src/ngx_rewrite_driver_factory.h b/src/ngx_rewrite_driver_factory.h index 70f66852e6..2450ddcdf8 100644 --- a/src/ngx_rewrite_driver_factory.h +++ b/src/ngx_rewrite_driver_factory.h @@ -63,8 +63,9 @@ class NgxRewriteDriverFactory : public SystemRewriteDriverFactory { virtual Timer* DefaultTimer(); virtual NamedLockManager* DefaultLockManager(); // Create a new RewriteOptions. In this implementation it will be an - // NgxRewriteOptions. + // NgxRewriteOptions, and it will have CoreFilters explicitly set. virtual RewriteOptions* NewRewriteOptions(); + virtual RewriteOptions* NewRewriteOptionsForQuery(); virtual ServerContext* NewDecodingServerContext(); // Check resolver configured or not. bool CheckResolver(); diff --git a/test/pagespeed_test.conf.template b/test/pagespeed_test.conf.template index f6e48d297e..ab364ea27c 100644 --- a/test/pagespeed_test.conf.template +++ b/test/pagespeed_test.conf.template @@ -1559,6 +1559,15 @@ http { pagespeed FileCachePath "@@FILE_CACHE@@"; } + server { + pagespeed on; + listen @@SECONDARY_PORT@@; + listen [::]:@@SECONDARY_PORT@@; + server_name debug-filters.example.com; + pagespeed FileCachePath "@@FILE_CACHE@@"; + pagespeed RewriteLevel PassThrough; + pagespeed EnableFilters debug; + } server { listen @@PRIMARY_PORT@@; listen [::]:@@PRIMARY_PORT@@;