Sur l'hergement mutualisé OVH:
=> OVH met en place des heuristiques pour accepter ou non une requête pour limiter les DDOS
=> En fonction de ça, ils décident
1) de passer l'appel normalement au serveur (cas nominal)
2) une stratégie anti-DDOS via leur load balancer NGINX:
- Augmentation du délai de réponse (pour faire claquer des timeouts)
- Redirection avec cookie (307) avec une url type ?__r=xxx avec ce genre de module ou directement un Access denied (403)
Seulement voilà, le support OVH n'est visiblement pas au courant puisqu'il indique des solutions éronnées: désactiver le firewall ou encore regarder les logs.
Cela se met en route de manière aléatoire et on ne sait pas quand cela se termine.
Voici un exemple:
```
curl -v https://www.screenpresso.com
* Trying 213.186.33.97…
* TCP_NODELAY set
* Connected to www.screenpresso.com (213.186.33.97) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
* CAfile: /etc/ssl/cert.pem
CApath: none
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (IN), TLS handshake, Finished (20):
* SSL connection using TLSv1.2 / ECDHE-RSA-CHACHA20-POLY1305
* ALPN, server accepted to use h2
* Server certificate:
* subject: CN=screenpresso.com
* start date: Aug 18 23:51:31 2021 GMT
* expire date: Nov 16 23:51:29 2021 GMT
* subjectAltName: host "www.screenpresso.com" matched cert's "www.screenpresso.com"
* issuer: C=US; O=Let's Encrypt; CN=R3
* SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
* Using Stream ID: 1 (easy handle 0x7fab0b00f600)
> GET / HTTP/2
> Host: www.screenpresso.com
> User-Agent: curl/7.64.1
> Accept: /
>
* Connection state changed (MAX_CONCURRENT_STREAMS == 100)!
< HTTP/2 307
< date: Thu, 19 Aug 2021 14:28:12 GMT
< content-type: text/html
< location: https://www.screenpresso.com/?__r=1.1117b1b4a5fd1d7a651d7006996d9b2c
< x-request-id: 972457139
< cache-control: no-cache
< vary: Accept-Encoding
< x-cdn-pop: rbx1
< x-cdn-pop-ip: 51.254.41.128/25
< x-cacheable: Cacheable
<
307 Temporary Redirect
307 Temporary Redirect
nginx
* Connection #0 to host www.screenpresso.com left intact
* Closing connection 0
```
Si vous utilisez des outils comme AHrefs, vous êtes littéralement bloqués! Le bot qui permet de faire des audits SEO est bloqué par OVH: il se prend des 307 ou 403 aléatoirement. Votre site est donc flagué comme complétement inconsistant et mal fagoté.
Vous aurez le même résultat avec SEMRush, qui lui aussi est bloqué!
Bien entendu, personne chez OVH n'a fait d'articles pour expliquer ce problème et les solutions possibles.