diff --git a/parselib/Makefile b/parselib/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..0a86850ccb33f46599070db1a29c981b396b08b4
--- /dev/null
+++ b/parselib/Makefile
@@ -0,0 +1,21 @@
+CFLAGS=-Wall -Wextra -Werror -g
+LIB=libhttp_parse.a
+
+SRC=$(wildcard *.c)
+OBJS=$(SRC:.c=.o)
+HDR=$(wildcard *.h)
+
+$(LIB): $(OBJS)
+	ar rs $@ $^
+	ranlib $@
+
+makefile.dep: $(SRC) $(HDR)
+	$(CC) $(CFLAGS) -MM $(SRC) > $@
+
+.PHONY: clean mrproper
+clean:
+	$(RM) $(OBJS)
+mrproper: clean
+	$(RM) $(LIB)
+
+include makefile.dep
\ No newline at end of file
diff --git a/parselib/libhttp_parse.a b/parselib/libhttp_parse.a
new file mode 100644
index 0000000000000000000000000000000000000000..0c4dd11a5c7b87ccd3b3f3e8a126fe136ee4de57
Binary files /dev/null and b/parselib/libhttp_parse.a differ
diff --git a/parselib/makefile.dep b/parselib/makefile.dep
new file mode 100644
index 0000000000000000000000000000000000000000..6f3c2ce772a94adbb62573fe6767e5b25b17b0ff
--- /dev/null
+++ b/parselib/makefile.dep
@@ -0,0 +1 @@
+http_parse.o: http_parse.c http_parse.h
diff --git a/webserver/.client.c.swp b/webserver/.client.c.swp
new file mode 100644
index 0000000000000000000000000000000000000000..bfa669678568879eec95db0d19c2152d2695122b
Binary files /dev/null and b/webserver/.client.c.swp differ
diff --git a/webserver/client.c b/webserver/client.c
index 1440815d309ad63e733a6849dd5b635dc4ec42c0..aeb4efc0ccc564f09aee59316be2fb4b5e523b38 100644
--- a/webserver/client.c
+++ b/webserver/client.c
@@ -39,10 +39,11 @@ FILE* check_and_open(const char* target, const char *document_root){
 }*/
 
 char* rewrite_target(char *target){
-	char* ret = strchr(target, '?');
-	char* rep ="";
+	char* ret = strrchr(target, '?');
+	char* rep = malloc(strlen(target)*sizeof(char));
     if (ret!= NULL){
-	    strncpy(rep,target,atoi(ret)-1);
+        size_t i = (int)(strlen(target)-strlen(ret));
+	    rep = strncpy(rep,target,i);
     }
 	return rep;
 }
@@ -81,14 +82,12 @@ void send_status(FILE *client, int code, const char *reason_phrase){
 }
 
 void send_response(FILE *client, int code, const char *reason_phrase, const char *message_body){
-    fprintf(client, "entree dans send_response\r\n");
 	send_status(client,code,reason_phrase);
 	//transmet la réponse complète (la suite)
 	fprintf(client,"Content-Lenght: %u\r\n",(unsigned int)strlen(message_body));
 	fprintf(client,"\r\n");
 	fprintf(client,"%s\r\n",message_body);
-    fprintf(client, "sortie de send_response\r\n");
-    fflush(client);
+	fflush(client);
 }
 
 
@@ -109,25 +108,14 @@ int traitementClient(int socket_client){
 	fgets_or_exit(str,8000,fd);
 	int parse_ret = parse_http_request(str,&request);
 	skip_headers(fd);
-	fprintf(fd, "avant if parse_ret\n");
 	if (parse_ret == -1) {
 		if (request.method == HTTP_UNSUPPORTED){
 			send_response(fd, 405, "Method Not Allowed", "Method Not Allowed");
 		}else{
 			send_response(fd, 400, "Bad Request", "Bad request");
 		}
-	}else if (strcmp(request.target, "/") == 0){
+	}else if (strcmp(request.target, "/test?aled") == 0){
 		send_response(fd, 200, "OK", motd);
-        fprintf(fd, "fin du else-if\r\n");
-	}else{
-		send_response(fd, 404, "Not Found", "Not Found");
-	}
-
-	//partie 7/
-	char* absolute_path = rewrite_target(request.target);
-	//--- les printf ne fonctionnent pas ;(
-	fprintf(fd,"avant test\r\n");
-	fprintf(fd,"test - - -  - - -  - - \n%s\r\n",absolute_path);
 	//---
 
 /*	FILE* fichier = check_and_open(absolute_path, "document.txt");
@@ -138,7 +126,13 @@ int traitementClient(int socket_client){
 	if(copy(fichier,fd))==-1){
 		//error
 	}*/
-	fflush(fd);
+	}else{
+		send_response(fd, 404, "Not Found", "Not Found");
+	}
+    fflush(fd);
+	//partie 7
+    char* absolute_path = rewrite_target(request.target);
+	printf("test - - -  - - - - - %s\n",absolute_path);
 	fclose(fd);
     return 0;
 }
diff --git a/webserver/client.o b/webserver/client.o
index 00a723fbf8ab01dc33cddc216582363fe381cb67..231792ee3b185c0270bda04d5b4f9f5bbe0b2fca 100644
Binary files a/webserver/client.o and b/webserver/client.o differ
diff --git a/webserver/pawnee b/webserver/pawnee
index 0e20b4bf5952b4c3e01ae1f3c150b9af7a1e28f2..1bec3235ec9bd1a52495f0b3d87b4a45080e03b7 100755
Binary files a/webserver/pawnee and b/webserver/pawnee differ