[BUG] http: the request URI pointer is relative to the buffer

The rq.u field is relative to buf->data, not to msg->sol. We have
to subtract msg->som everywhere this error was made. Maybe it will
be simpler to have a pointer to the buffer in the message and find
appropriate data there.
diff --git a/src/backend.c b/src/backend.c
index 8ce981c..fedac39 100644
--- a/src/backend.c
+++ b/src/backend.c
@@ -535,19 +535,19 @@
 			case BE_LB_HASH_URI:
 				/* URI hashing */
 				s->srv = get_server_uh(s->be,
-						       s->txn.req.sol + s->txn.req.sl.rq.u,
+						       s->txn.req.sol - s->txn.req.som + s->txn.req.sl.rq.u,
 						       s->txn.req.sl.rq.u_l);
 				break;
 
 			case BE_LB_HASH_PRM:
 				/* URL Parameter hashing */
 				if (s->txn.meth == HTTP_METH_POST &&
-				    memchr(s->txn.req.sol + s->txn.req.sl.rq.u, '&',
+				    memchr(s->txn.req.sol - s->txn.req.som + s->txn.req.sl.rq.u, '&',
 					   s->txn.req.sl.rq.u_l ) == NULL)
 					s->srv = get_server_ph_post(s);
 				else
 					s->srv = get_server_ph(s->be,
-							       s->txn.req.sol + s->txn.req.sl.rq.u,
+							       s->txn.req.sol - s->txn.req.som + s->txn.req.sl.rq.u,
 							       s->txn.req.sl.rq.u_l);
 				break;