Created
July 27, 2012 19:05
-
-
Save schubert/3189857 to your computer and use it in GitHub Desktop.
nginx config trick to force specific return code for testing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ curl -I http://some.local.app.dev/?return=402 | |
HTTP/1.1 402 Payment Required | |
Server: nginx/1.2.2 | |
Date: Fri, 27 Jul 2012 19:08:19 GMT | |
Content-Type: text/html | |
Content-Length: 182 | |
Connection: keep-alive | |
Keep-Alive: timeout=10 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
if ($args ~ "return=(\d\d\d)") { | |
set $p $1; | |
} | |
# http://www.iana.org/assignments/http-status-codes/http-status-codes.xml | |
if ($p ~ 100 ) { return 100; } | |
if ($p ~ 101 ) { return 101; } | |
if ($p ~ 102 ) { return 102; } | |
if ($p ~ 200 ) { return 200; } | |
if ($p ~ 201 ) { return 201; } | |
if ($p ~ 202 ) { return 202; } | |
if ($p ~ 203 ) { return 203; } | |
if ($p ~ 204 ) { return 204; } | |
if ($p ~ 205 ) { return 205; } | |
if ($p ~ 206 ) { return 206; } | |
if ($p ~ 207 ) { return 207; } | |
if ($p ~ 208 ) { return 208; } | |
if ($p ~ 226 ) { return 226; } | |
if ($p ~ 300 ) { return 300; } | |
if ($p ~ 301 ) { return 301; } | |
if ($p ~ 302 ) { return 302; } | |
if ($p ~ 303 ) { return 303; } | |
if ($p ~ 304 ) { return 304; } | |
if ($p ~ 305 ) { return 305; } | |
if ($p ~ 306 ) { return 306; } | |
if ($p ~ 307 ) { return 307; } | |
if ($p ~ 308 ) { return 308; } | |
if ($p ~ 400 ) { return 400; } | |
if ($p ~ 401 ) { return 401; } | |
if ($p ~ 402 ) { return 402; } | |
if ($p ~ 403 ) { return 403; } | |
if ($p ~ 404 ) { return 404; } | |
if ($p ~ 405 ) { return 405; } | |
if ($p ~ 406 ) { return 406; } | |
if ($p ~ 407 ) { return 407; } | |
if ($p ~ 408 ) { return 408; } | |
if ($p ~ 409 ) { return 409; } | |
if ($p ~ 410 ) { return 410; } | |
if ($p ~ 411 ) { return 411; } | |
if ($p ~ 412 ) { return 412; } | |
if ($p ~ 413 ) { return 413; } | |
if ($p ~ 414 ) { return 414; } | |
if ($p ~ 415 ) { return 415; } | |
if ($p ~ 416 ) { return 416; } | |
if ($p ~ 417 ) { return 417; } | |
if ($p ~ 422 ) { return 422; } | |
if ($p ~ 423 ) { return 423; } | |
if ($p ~ 424 ) { return 424; } | |
if ($p ~ 425 ) { return 425; } | |
if ($p ~ 426 ) { return 426; } | |
if ($p ~ 427 ) { return 427; } | |
if ($p ~ 428 ) { return 428; } | |
if ($p ~ 429 ) { return 429; } | |
if ($p ~ 430 ) { return 430; } | |
if ($p ~ 431 ) { return 431; } | |
if ($p ~ 500 ) { return 500; } | |
if ($p ~ 501 ) { return 501; } | |
if ($p ~ 502 ) { return 502; } | |
if ($p ~ 503 ) { return 503; } | |
if ($p ~ 504 ) { return 504; } | |
if ($p ~ 505 ) { return 505; } | |
if ($p ~ 506 ) { return 506; } | |
if ($p ~ 507 ) { return 507; } | |
if ($p ~ 508 ) { return 508; } | |
if ($p ~ 509 ) { return 509; } | |
if ($p ~ 510 ) { return 510; } | |
if ($p ~ 511 ) { return 511; } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
if ($args ~ "return=(\d\d\d)") { | |
set $p $1; | |
} | |
# http://www.iana.org/assignments/http-status-codes/http-status-codes.xml | |
<% [(100..102), (200..208), [226], (300..308), (400..417), (422..431), (500..511)].each do |range| %> | |
<% range.each do |code| %> | |
if ($p ~ <%= code %> ) { return <%= code %>; } | |
<% end %> | |
<% end %> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment