You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by jc...@apache.org on 2017/06/26 17:17:58 UTC
svn commit: r1799955 - in /httpd/test/framework/trunk/t: conf/proxy.conf.in
modules/proxy_fcgi.t
Author: jchampion
Date: Mon Jun 26 17:17:57 2017
New Revision: 1799955
URL: http://svn.apache.org/viewvc?rev=1799955&view=rev
Log:
proxy_fcgi.t: add Action regression test
Note that this is meant only as a compatibility regression test, to keep
some poor soul from accidentally forgetting about it and busting it. I'm
not able to find a backend yet that works with this config.
Modified:
httpd/test/framework/trunk/t/conf/proxy.conf.in
httpd/test/framework/trunk/t/modules/proxy_fcgi.t
Modified: httpd/test/framework/trunk/t/conf/proxy.conf.in
URL: http://svn.apache.org/viewvc/httpd/test/framework/trunk/t/conf/proxy.conf.in?rev=1799955&r1=1799954&r2=1799955&view=diff
==============================================================================
--- httpd/test/framework/trunk/t/conf/proxy.conf.in (original)
+++ httpd/test/framework/trunk/t/conf/proxy.conf.in Mon Jun 26 17:17:57 2017
@@ -97,6 +97,16 @@
</Files>
</Directory>
</IfModule>
+
+ <IfModule mod_actions.c>
+ <Directory @SERVERROOT@/htdocs/modules/proxy/fcgi-action>
+ AddType application/x-fcgi-action .php
+ Action application/x-fcgi-action /fcgi-action-virtual virtual
+ </Directory>
+ <Location /fcgi-action-virtual>
+ SetHandler proxy:fcgi://127.0.0.1:${FCGI_PORT}
+ </Location>
+ </IfModule>
</VirtualHost>
</IfModule>
Modified: httpd/test/framework/trunk/t/modules/proxy_fcgi.t
URL: http://svn.apache.org/viewvc/httpd/test/framework/trunk/t/modules/proxy_fcgi.t?rev=1799955&r1=1799954&r2=1799955&view=diff
==============================================================================
--- httpd/test/framework/trunk/t/modules/proxy_fcgi.t (original)
+++ httpd/test/framework/trunk/t/modules/proxy_fcgi.t Mon Jun 26 17:17:57 2017
@@ -10,7 +10,7 @@ my $have_fcgibackendtype = have_min_apac
plan tests => (7 * $have_fcgisetenvif) + (2 * $have_fcgibackendtype) +
(2 * $have_fcgibackendtype * have_module('rewrite')) +
- (7 * have_module('rewrite')) + 2,
+ (7 * have_module('rewrite')) + (7 * have_module('actions')) + 2,
need (
'mod_proxy_fcgi',
'FCGI',
@@ -199,6 +199,28 @@ if (have_module('rewrite')) {
"Default REDIRECT_URL uses original client URL");
}
+if (have_module('actions')) {
+ # Regression test to ensure that the bizarre Action invocation for FCGI
+ # still works as it did in 2.4.20. Almost none of this follows any spec at
+ # all. As far as I can tell, this method does not work with FPM.
+ $envs = run_fcgi_envvar_request($fcgi_port, "/modules/proxy/fcgi-action/index.php/path/info?query");
+
+ ok t_cmp($envs->{'SCRIPT_FILENAME'}, "proxy:fcgi://127.0.0.1:" . $fcgi_port
+ . $docroot
+ . '/fcgi-action-virtual',
+ "Action SCRIPT_FILENAME has proxy:fcgi prefix and uses virtual action Location");
+ ok t_cmp($envs->{'SCRIPT_NAME'}, '/fcgi-action-virtual',
+ "Action SCRIPT_NAME is the virtual action Location");
+ ok t_cmp($envs->{'PATH_INFO'}, '/modules/proxy/fcgi-action/index.php/path/info',
+ "Action PATH_INFO contains full URI path");
+ ok t_cmp($envs->{'PATH_TRANSLATED'}, $docroot . '/modules/proxy/fcgi-action/index.php/path/info',
+ "Action PATH_TRANSLATED contains full URI path");
+ ok t_cmp($envs->{'QUERY_STRING'}, 'query',
+ "Action QUERY_STRING is correct");
+ ok t_cmp($envs->{'REDIRECT_URL'}, '/modules/proxy/fcgi-action/index.php/path/info',
+ "Action REDIRECT_URL uses original client URL");
+}
+
# Regression test for PR61202.
$envs = run_fcgi_envvar_request($fcgi_port, "/modules/proxy/fcgi/index.php");