diff --git a/doc/DeviceAtlas-device-detection.txt b/doc/DeviceAtlas-device-detection.txt
index ee269e4..2358c5c 100644
--- a/doc/DeviceAtlas-device-detection.txt
+++ b/doc/DeviceAtlas-device-detection.txt
@@ -11,7 +11,7 @@
 to the include files and libraries respectively if they're not in the source
 directory.
 
-For HAProxy developers who need to verify that their changes didn't accidently
+For HAProxy developers who need to verify that their changes didn't accidentally
 break the DeviceAtlas code, it is possible to build a dummy library provided in
 the contrib/deviceatlas directory and to use it as an alternative for the full
 library. This will not provide the full functionalities, it will just allow
@@ -48,7 +48,7 @@
 
     http-request set-header X-DeviceAtlas-Data %[da-csv-fetch(primaryHardwareType,osName,osVersion,browserName,browserVersion,browserRenderingEngine)]
 
-Single HTTP header (e.g. User-Agent) via the convertor
+Single HTTP header (e.g. User-Agent) via the converter
 
     http-request set-header X-DeviceAtlas-Data %[req.fhdr(User-Agent),da-csv-conv(primaryHardwareType,osName,osVersion,browserName,browserVersion,browserRenderingEngine)]
 
diff --git a/doc/SPOE.txt b/doc/SPOE.txt
index 59cbafe..19f00ad 100644
--- a/doc/SPOE.txt
+++ b/doc/SPOE.txt
@@ -97,7 +97,7 @@
 contain any scope directive.
 
 We use a separate configuration file on purpose. By commenting SPOE filter
-line, you completly disable the feature, including the parsing of sections
+line, you completely disable the feature, including the parsing of sections
 reserved to SPOE. This is also a way to keep the HAProxy configuration clean.
 
 A SPOE configuration file must contains, at least, the SPOA configuration
@@ -313,7 +313,7 @@
 
     * 1       a timeout occurred during the event processing.
 
-    * 2       an error was triggered during the ressources allocation.
+    * 2       an error was triggered during the resources allocation.
 
     * 3       the frame payload exceeds the frame size and it cannot be
               fragmented.
@@ -1029,7 +1029,7 @@
 -------------------------------
 
 If an error occurs, at anytime, from the agent size, a AGENT-DISCONNECT frame
-is sent, with information desribing the error. such frame is also sent in reply
+is sent, with information describing the error. such frame is also sent in reply
 to a HAPROXY-DISCONNECT. The agent must close the socket just after sending
 this frame.
 
diff --git a/doc/WURFL-device-detection.txt b/doc/WURFL-device-detection.txt
index 41afb17..3c28d19 100644
--- a/doc/WURFL-device-detection.txt
+++ b/doc/WURFL-device-detection.txt
@@ -17,7 +17,7 @@
 
 Optionally WURFL_DEBUG=1 may be set to increase logs verbosity
 
-For HAProxy developers who need to verify that their changes didn't accidently
+For HAProxy developers who need to verify that their changes didn't accidentally
 break the WURFL code, it is possible to build a dummy library provided in the
 contrib/wurfl directory and to use it as an alternative for the full library.
 This will not provide the full functionalities, it will just allow haproxy to
diff --git a/doc/coding-style.txt b/doc/coding-style.txt
index 5f252ed..9f1bd79 100644
--- a/doc/coding-style.txt
+++ b/doc/coding-style.txt
@@ -520,7 +520,7 @@
   | bit = ! ! (~len++ ^ - (unsigned char) * x) ;
 
 Note that "sizeof" is a unary operator which is sometimes considered as a
-langage keyword, but in no case it is a function. It does not require
+language keyword, but in no case it is a function. It does not require
 parenthesis so it is sometimes followed by spaces and sometimes not when
 there are no parenthesis. Most people do not really care as long as what
 is written is unambiguous.
@@ -814,7 +814,7 @@
 This is wrong. The man page says that -1 is returned if an error occurred. It
 does not suggest that any other negative value will be an error. It is possible
 that a few such issues have been left in existing code. They are bugs for which
-fixes are accepted, eventhough they're currently harmless since open() is not
+fixes are accepted, even though they're currently harmless since open() is not
 known for returning negative values at the moment.
 
 
diff --git a/doc/configuration.txt b/doc/configuration.txt
index 4042407..dcbe1eb 100644
--- a/doc/configuration.txt
+++ b/doc/configuration.txt
@@ -2067,7 +2067,7 @@
   "server" keyword explanation below).
 
 server <peername> [<ip>:<port>] [param*]
-  As previously mentionned, "peer" keyword may be replaced by "server" keyword
+  As previously mentioned, "peer" keyword may be replaced by "server" keyword
   with a support for all "server" parameters found in 5.2 paragraph.
   If the underlying peer is local, <ip>:<port> parameters must not be present.
   These parameters must  be provided on a "bind" line (see "bind" keyword
@@ -3274,7 +3274,7 @@
 
               already have a cookie that would have permitted it to access this
               server. When used without the "preserve" option, if the server
-              emits a cookie with the same name, it will be remove before
+              emits a cookie with the same name, it will be removed before
               processing. For this reason, this mode can be used to upgrade
               existing configurations running in the "rewrite" mode. The cookie
               will only be a session cookie and will not be stored on the
@@ -5162,7 +5162,7 @@
                  proving that the server correctly supports connection reuse.
                  It should only be used when it's sure that the client can
                  retry a failed request once in a while and where the benefit
-                 of aggressive connection reuse significantly outweights the
+                 of aggressive connection reuse significantly outweighs the
                  downsides of rare connection failures.
 
     - "always" : this mode is only recommended when the path to the server is
@@ -15408,7 +15408,7 @@
 ssl_bc_alpn : string
   This extracts the Application Layer Protocol Negotiation field from an
   outgoing connection made via a TLS transport layer.
-  The result is a string containing the protocol name negociated with the
+  The result is a string containing the protocol name negotiated with the
   server. The SSL library must have been built with support for TLS
   extensions enabled (check haproxy -vv). Note that the TLS ALPN extension is
   not advertised unless the "alpn" keyword on the "server" line specifies a
@@ -15428,7 +15428,7 @@
 ssl_bc_npn : string
   This extracts the Next Protocol Negotiation field from an outgoing connection
   made via a TLS transport layer. The result is a string containing the
-  protocol name negociated with the server . The SSL library must have been
+  protocol name negotiated with the server . The SSL library must have been
   built with support for TLS extensions enabled (check haproxy -vv). Note that
   the TLS NPN extension is not advertised unless the "npn" keyword on the
   "server" line specifies a protocol list. Also, nothing forces the server to
diff --git a/doc/intro.txt b/doc/intro.txt
index 0379119..a60844c 100644
--- a/doc/intro.txt
+++ b/doc/intro.txt
@@ -1481,7 +1481,7 @@
 
 Apache is the de-facto standard HTTP server. It's a very complete and modular
 project supporting both file serving and dynamic contents. It can serve as a
-frontend for some application servers. In can even proxy requests and cache
+frontend for some application servers. It can even proxy requests and cache
 responses. In all of these use cases, a front load balancer is commonly needed.
 Apache can work in various modes, some being heavier than others. Certain
 modules still require the heavier pre-forked model and will prevent Apache from
diff --git a/doc/lua.txt b/doc/lua.txt
index dcb9b8f..6c49e64 100644
--- a/doc/lua.txt
+++ b/doc/lua.txt
@@ -412,7 +412,7 @@
    tune.lua.maxmem
 
 As many other script languages, Lua uses a garbage collector for reusing its
-memory. The Lua developper can work without memory preoccupation. Usually, the
+memory. The Lua developer can work without memory preoccupation. Usually, the
 garbage collector is controlled by the Lua core, but sometimes it will be useful
 to run when the user/developer requires. So the garbage collector can be called
 from C part or Lua part.
@@ -885,7 +885,7 @@
 
 The function "core.register_task(fcn)" executes once the function "fcn" when the
 scheduler starts. This way is used for executing background task. For example,
-you can use this functionnality for periodically checking the health of another
+you can use this functionality for periodically checking the health of another
 service, and giving the result to each proxy needing it.
 
 The task is started once, if you want periodic actions, you can use the
diff --git a/doc/management.txt b/doc/management.txt
index 09ae26e..7cc1d75 100644
--- a/doc/management.txt
+++ b/doc/management.txt
@@ -1705,7 +1705,7 @@
 
 set server <backend>/<server> addr <ip4 or ip6 address> [port <port>]
   Replace the current IP address of a server by the one provided.
-  Optionnaly, the port can be changed using the 'port' parameter.
+  Optionally, the port can be changed using the 'port' parameter.
   Note that changing the port also support switching from/to port mapping
   (notation with +X or -Y), only if a port is configured for the health check.
 
@@ -2099,7 +2099,7 @@
   <peers section> is specified, only the information about the peers belonging
   to this "peers" section are dumped.
 
-  Here are two examples of ouputs where hostA, hostB and hostC peers belong to
+  Here are two examples of outputs where hostA, hostB and hostC peers belong to
   "sharedlb" peers sections. Only hostA and hostB are connected. Only hostA has
   sent data to hostB.
 
diff --git a/doc/netscaler-client-ip-insertion-protocol.txt b/doc/netscaler-client-ip-insertion-protocol.txt
index 559d98a..dc64327 100644
--- a/doc/netscaler-client-ip-insertion-protocol.txt
+++ b/doc/netscaler-client-ip-insertion-protocol.txt
@@ -1,4 +1,4 @@
-When NetScaler application switch is used as L3+ switch, informations
+When NetScaler application switch is used as L3+ switch, information
 regarding the original IP and TCP headers are lost as a new TCP
 connection is created between the NetScaler and the backend server.
 
diff --git a/doc/peers-v2.0.txt b/doc/peers-v2.0.txt
index 841436d..477e7bb 100644
--- a/doc/peers-v2.0.txt
+++ b/doc/peers-v2.0.txt
@@ -277,11 +277,11 @@
 
 The chosen remote peer will push its all known data ending with a Resync Finished Message or a Resync Partial Message (if it it does not consider itself as full updated).
 
-If it receive a Resync Finished Message it will consider itself as fully updated and stops to ask for resync.
+If it receives a Resync Finished Message it will consider itself as fully updated and stops to ask for resync.
 
-If it receive a Resync Partial Message, the current peer will be flagged to anymore be requested and any other connected peer will be randomly chosen for a resync request (5s).
+If it receives a Resync Partial Message, the current peer will be flagged to anymore be requested and any other connected peer will be randomly chosen for a resync request (5s).
 
-If the session is broken before receiving any ot these messages any other connected peer will be randomly chosen for a resync request (5s).
+If the session is broken before receiving any of these messages any other connected peer will be randomly chosen for a resync request (5s).
 
 If the timeout expire, the process will consider itself as fully updated
 
diff --git a/doc/proxy-protocol.txt b/doc/proxy-protocol.txt
index 4969180..52d7bc7 100644
--- a/doc/proxy-protocol.txt
+++ b/doc/proxy-protocol.txt
@@ -561,7 +561,7 @@
 In case of TLS being used on the client connection, this is the exact copy of
 the "server_name" extension as defined by RFC3546 [10], section 3.1, often
 referred to as "SNI". There are probably other situations where an authority
-can be mentionned on a connection without TLS being involved at all.
+can be mentioned on a connection without TLS being involved at all.
 
 
 2.2.3. PP2_TYPE_CRC32C
diff --git a/doc/regression-testing.txt b/doc/regression-testing.txt
index 77ebaec..320c51c 100644
--- a/doc/regression-testing.txt
+++ b/doc/regression-testing.txt
@@ -40,7 +40,7 @@
 root of the vtest sources directory.
 
 
-vtest exectution
+vtest execution
 ---------------------
 
 vtest is able to search for the haproxy executable file it is supposed to
@@ -131,7 +131,7 @@
     #   BUG/MINOR: spoe: Initialize variables used during conf parsing before any check
 
     #   Some initializations must be done at the beginning of parse_spoe_flt to avoid
-    #   segmentaion fault when first errors are catched, when the "filter spoe" line is
+    #   segmentaion fault when first errors are caught, when the "filter spoe" line is
     #   parsed.
 
     haproxy h1 -conf-BAD {} {
