113 Commits

Author SHA1 Message Date
Ben Noordhuis 4aad27ccf9 ngx_base_fetch: implement locking 2012-11-21 20:09:03 +01:00
Ben Noordhuis 51de81b123 build: link against debug libs if NGX_DEBUG=YES
Link against the debug versions of the mod_pagespeed libraries when nginx is
configured with --with-debug.

Requires that said libraries have been pre-built with BUILDTYPE=Debug.
2012-11-21 19:37:04 +01:00
Otto van der Schaaf d12508b12d apr: include headers in a portable manner 2012-11-20 15:21:56 +01:00
Jeff Kaufman aeb0de0e77 configuration: prepare to parse options
Set up the background code for connecting pagespeed configuration structures
(RewriteOptions) to the companion nginx ones.  Passes all the actual work
through to NgxRewriteOptions::ParseAndSetOptions which isn't written yet.
(All it does so far is interpret "pagespeed on/off".)

Adding nginx subclasses of RewriteOptions and ServerContext are a bit overkill
for this change, but we're going to need them a lot.

Once configuration is complete, any mod_pagespeed configuration directive should
work in ngx_pagespeed:

    mod_pagespeed.conf:
      ModPagespeedEnableFilters collapse_whitespace
      ModPagespeedRunExperiment on
      ModPagespeedExperimentSpec id=3;percent=50;default
      ModPagespeedExperimentSpec id=4;percent=50

    ngx_pagespeed.conf:
      pagespeed ModPagespeedEnableFilters collapse_whitespace
      pagespeed ModPagespeedRunExperiment on;
      pagespeed ModPagespeedExperimentSpec "id=3;percent=50;default";
      pagespeed ModPagespeedExperimentSpec "id=4;percent=50";

The `ModPagespeed` is optional, and discouraged:

    ngx_pagespeed.conf:
      pagespeed EnableFilters collapse_whitespace
      pagespeed RunExperiment on;
      pagespeed ExperimentSpec "id=3;percent=50;default";
      pagespeed ExperimentSpec "id=4;percent=50";
2012-11-13 10:26:41 -05:00
Otto van der Schaaf b1eb547275 apr and serf: link in apr, apr-utils, and serf
- Links in apr, apr-utils, and serf.
- Replaces the wget fetcher with serf, which will be replaced later
on with the native fetcher.
2012-11-09 22:29:51 +01:00
Jeff Kaufman b9fff21986 Rewrite pages asynchronously (branch jefftk-async-rewrite, pull request 11). 2012-11-01 10:31:12 -04:00
Jeff Kaufman 1766acbffb Support Blocking Rewrite Flow
Run all responses through PSOL's rewriter in a blocking manner. While eventually we need to be using the asynchronous rewriting interface, this is a simple proof of concept. In test/expected/test.html you can see the effect of running this code on test/www/test/html
2012-10-18 10:18:05 -04:00
Ben Noordhuis 775cc36de6 build: adapt link order to -Wl,--as-needed 2012-10-10 17:34:55 +02:00
Jeff Kaufman a531e56e96 add include dir for version string 2012-10-02 11:43:39 -04:00
Jeff Kaufman fbec99cbaf actually link against pagespeed_automatic.a, and properly test we're doing so 2012-10-02 11:30:47 -04:00
Jeff Kaufman 8d0decb332 no need for dirname/BASH_SOURCE hack -- can use ngx_addon_dir 2012-10-01 15:10:56 -04:00
Jeff Kaufman cff21ace3a Merged in changes from jefftk-experimental to:
- link in psol
 - manipulate the buffer chain to add a 'processed by us' comment
 - use chunked encoding to we don't have to update the headers when
   we change the length of the request
 - use c++ for the module
2012-10-01 14:43:23 -04:00
Ben Noordhuis 64a66cfb07 skeleton ngx_pagespeed module 2012-06-23 22:13:06 +02:00