J'avais un code qui fonctionnait bien en appelant un fichier php de mon site pour uploader un fichier.
Depuis quelques temps, cela ne marche pas car je pense que mon hébergeur à ajouter le ModSecurity.
J'obtiens cela en log sur mon site :
Et voici le code :ModSecurity: Access denied with code 406 (phase 2). Operator EQ matched 0 at REQUEST_HEADERS_NAMES. [file "remote server"] [line "-1"] [id "600004"] [msg "Malware.Expert - Unauthenticated upload"]
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 HTTP := TIdHTTP.Create; HTTP.Request.UserAgent := 'Mozilla/5.0 (compatible;MyApp)'; Stream := TStringStream.Create; Params := TIdMultipartFormDataStream.Create; Params.AddFile('toto', Fn, 'application/octet-stream'); // MIME try HTTP.Post(Website+'/support/upload.php', Params, Stream); // là, cela génére un code erreur 406 result := true; except on E: Exception do begin Memo.Lines.Insert(0, 'ERROR: (P) ' + E.Message); end; end; Params.Free; Stream.Clear; Stream.Free; HTTP.Free;
Partager