solr-proxy
Advanced tools
Comparing version 1.1.2 to 1.2.0
@@ -5,2 +5,3 @@ var http = require('http'), | ||
extend = require('xtend'), | ||
debug = require('debug')('solr-proxy'), | ||
SolrProxy = {}; | ||
@@ -51,4 +52,6 @@ | ||
if (validateRequest(request, options)) { | ||
debug('ALLOWED: ' + request.method + ' ' + request.url); | ||
proxy.web(request, response); | ||
} else { | ||
debug('DENIED: ' + request.method + ' ' + request.url); | ||
response.writeHead(403, 'Illegal request'); | ||
@@ -55,0 +58,0 @@ response.write('solrProxy: access denied\n'); |
@@ -1,3 +0,31 @@ | ||
module.exports = function(argv, logger, SolrProxy) { | ||
var createProxyOptions = function (argv) { | ||
var proxyOptions = { | ||
backend: {} | ||
}; | ||
if (argv.backendPort) { | ||
proxyOptions.backend.port = argv.backendPort; | ||
} | ||
if (argv.backendHost) { | ||
proxyOptions.backend.host = argv.backendHost; | ||
} | ||
if (argv.validMethods) { | ||
proxyOptions.validHttpMethods = argv.validMethods.split(','); | ||
} | ||
if (argv.invalidParams) { | ||
proxyOptions.invalidParams = argv.invalidParams.split(','); | ||
} | ||
if (argv.validPaths) { | ||
proxyOptions.validPaths = argv.validPaths.split(','); | ||
} | ||
return proxyOptions; | ||
}; | ||
module.exports = function(argv, stdout, SolrProxy) { | ||
var usageMessage = 'Usage: solr-proxy [options]\n' + | ||
@@ -14,2 +42,3 @@ '\n' + | ||
' delimited)\n' + | ||
' --quiet, -q Do not write messages to STDOUT\n' + | ||
' --version, -v Show version\n' + | ||
@@ -19,3 +48,3 @@ ' --help, -h Show this message'; | ||
if (argv.help || argv.h) { | ||
logger(usageMessage); | ||
stdout(usageMessage); | ||
return; | ||
@@ -26,32 +55,15 @@ } | ||
var version = require('../../package.json').version; | ||
logger(version); | ||
stdout(version); | ||
return; | ||
} | ||
var proxyOptions = { | ||
backend: {} | ||
}; | ||
if (argv.backendPort) { | ||
proxyOptions.backend.port = argv.backendPort; | ||
if (argv.quiet || argv.q) { | ||
// quiet mode, change stdout to a no-op | ||
stdout = function () {}; | ||
} | ||
if (argv.backendHost) { | ||
proxyOptions.backend.host = argv.backendHost; | ||
} | ||
var proxyOptions = createProxyOptions(argv); | ||
if (argv.validMethods) { | ||
proxyOptions.validHttpMethods = argv.validMethods.split(','); | ||
} | ||
if (argv.invalidParams) { | ||
proxyOptions.invalidParams = argv.invalidParams.split(','); | ||
} | ||
if (argv.validPaths) { | ||
proxyOptions.validPaths = argv.validPaths.split(','); | ||
} | ||
SolrProxy.start(argv.port, proxyOptions); | ||
logger('solr-proxy is running...'); | ||
stdout('solr-proxy is running...'); | ||
}; |
{ | ||
"name": "solr-proxy", | ||
"version": "1.1.2", | ||
"version": "1.2.0", | ||
"dependencies": { | ||
"debug": { | ||
"version": "2.1.3", | ||
"from": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz", | ||
"resolved": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz", | ||
"dependencies": { | ||
"ms": { | ||
"version": "0.7.0", | ||
"from": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz", | ||
"resolved": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz" | ||
} | ||
} | ||
}, | ||
"http-proxy": { | ||
@@ -6,0 +18,0 @@ "version": "1.10.1", |
@@ -10,3 +10,3 @@ { | ||
], | ||
"version": "1.1.2", | ||
"version": "1.2.0", | ||
"author": "Rich Trott <rtrott@gmail.com>", | ||
@@ -38,2 +38,3 @@ "bugs": { | ||
"dependencies": { | ||
"debug": "^2.1.3", | ||
"http-proxy": "^1.10.1", | ||
@@ -40,0 +41,0 @@ "minimist": "^1.1.1", |
@@ -6,3 +6,3 @@ solr-proxy | ||
This is a rewrite of https://github.com/dergachev/solr-security-proxy with some bug fixes and other changes. | ||
This is a rewrite of [solr-security-proxy](https://github.com/dergachev/solr-security-proxy) with some bug fixes and additional features. | ||
@@ -44,2 +44,3 @@ [![Build Status](https://secure.travis-ci.org/Trott/solr-proxy.png)](http://travis-ci.org/Trott/solr-proxy) | ||
--validMethods Allowed HTTP methods (comma separated) [default: "GET,HEAD"] | ||
--quiet, -q Do not write messages to STDOUT | ||
--version, -v Show version | ||
@@ -70,2 +71,4 @@ --help, -h Show this message | ||
To enable verbose logging, set environment variable `DEBUG` to include `solr-proxy`. | ||
Default Rules | ||
@@ -72,0 +75,0 @@ ------------- |
9302
169
91
4
+ Addeddebug@^2.1.3
+ Addeddebug@2.6.9(transitive)
+ Addedms@2.0.0(transitive)