error 404 when load image over WWW class in unity - unity3d

I tried to download image from my server over www. In UnityPlayer it is all right, but when i run app on xcode it is crash.
I check log on server and there was no request from ios only from webplayer:
109.252.44.138 - - [17/Feb/2018:09:53:18 +0300] "POST /unityConnect.php HTTP/1.0" 200 604 "-" "cocktailparty/27
CFNetwork/893.14.2 Darwin/17.3.0" 452 746 0 125187
109.252.44.138 - - [17/Feb/2018:09:53:39 +0300] "POST /unityConnect.php HTTP/1.0" 200 14 "-" "cocktailparty/27
CFNetwork/893.14.2 Darwin/17.3.0" 563 156 0 2266
109.252.44.138 - - [17/Feb/2018:09:53:39 +0300] "POST /unityConnect.php HTTP/1.0" 200 170 "-" "cocktailparty/27
CFNetwork/893.14.2 Darwin/17.3.0" 421 312 0 1807
109.252.44.138 - - [17/Feb/2018:09:53:43 +0300] "POST /unityConnect.php HTTP/1.0" 200 992 "-" "cocktailparty/27
CFNetwork/893.14.2 Darwin/17.3.0" 430 1134 0 243826
109.252.44.138 - - [17/Feb/2018:09:53:45 +0300] "POST /unityConnect.php HTTP/1.0" 200 604 "-" "cocktailparty/27
CFNetwork/893.14.2 Darwin/17.3.0" 452 746 0 2482
109.252.44.138 - - [17/Feb/2018:09:54:05 +0300] "POST /unityConnect.php HTTP/1.0" 200 604 "-" "cocktailparty/27
CFNetwork/893.14.2 Darwin/17.3.0" 452 746 0 2452
109.252.44.138 - - [17/Feb/2018:09:54:25 +0300] "POST /unityConnect.php HTTP/1.0" 200 13 "-" "UnityPlayer/2017.3.0f3
(UnityWebRequest/1.0, libcurl/7.51.0-DEV)" 595 155 0 1760
109.252.44.138 - - [17/Feb/2018:09:54:25 +0300] "POST /unityConnect.php HTTP/1.0" 200 170 "-" "UnityPlayer/2017.3.0f3
(UnityWebRequest/1.0, libcurl/7.51.0-DEV)" 414 312 0 1034
109.252.44.138 - - [17/Feb/2018:09:54:29 +0300] "POST /unityConnect.php HTTP/1.0" 200 992 "-" "UnityPlayer/2017.3.0f3
(UnityWebRequest/1.0, libcurl/7.51.0-DEV)" 423 1134 0 263959
109.252.44.138 - - [17/Feb/2018:09:54:32 +0300] "POST /unityConnect.php HTTP/1.0" 200 604 "-" "UnityPlayer/2017.3.0f3
(UnityWebRequest/1.0, libcurl/7.51.0-DEV)" 445 746 0 3588
109.252.44.138 - - [17/Feb/2018:09:54:32 +0300] "GET /img/0002.jpg HTTP/1.1" 200 73962 "-" "UnityPlayer/2017.3.0f3 (UnityWebRequest/1.0,
libcurl/7.51.0-DEV)"
Code:
public void GetFullReceiptMySQL(Dictionary <string, string> [] newReader)
{
StartCoroutine(StartLoad(newReader[0]["id"], newReader));
}
IEnumerator StartLoad(string idCocktail, Dictionary <string, string> [] newReader)
{
// testing parameter 0002, image 0002 present on server
string imageUrl = GetFullSourceCocktailImage("0002");
WWW www = new WWW(imageUrl);
Debug.Log(imageUrl);
// Wait for download to complete
Debug.Log ("Done1? " + www.isDone + " progress " + www.progress + " or with error " + www.error) ;
yield return www;
Debug.Log ("Done2? " + www.isDone + " progress " + www.progress + " or with error " + www.error) ;
if (!string.IsNullOrEmpty(www.error))
{
Debug.Log("error " + www.error);
}
else
{
Debug.Log("image ready" + www.error);
RawImage image = GetComponent<KeeperScript>().imageCocktailInReceipt;
Texture2D newTexture = new Texture2D(www.texture.width, www.texture.height);
www.LoadImageIntoTexture(newTexture as Texture2D);
image.GetComponent<RawImage>().texture= newTexture;
MakeAllReceipt(newReader);
}
DestroyImmediate(www.texture);
www.Dispose();
www = null;
Resources.UnloadUnusedAssets();
}
In XCode in logs there was error 404

Related

Flutter Dio - extraneous request to server

I am debugging http requests to our server and decided to try Dio dart package. After some trials (with no difference in results from standard http packages), I decided to stop using the Dio package.
I though happen to notice extraneous requests from random location (traced back to China telecom). Considering we are only trying to setup the server, and the requests started showing up only after I used Dio in my flutter app - Is DIO snooping on my server?
Seen on Server
X-Forwarded-Protocol: https
X-Real-Ip: 183.136.225.35
Host: 0.0.0.0:5002
Connection: close
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36 QIHU 360SE
Accept: */*
Referer: ******
Accept-Encoding: gzip
2022-10-06 15:06:06,768 [DEBUG] root:
X-Forwarded-Protocol: https
X-Real-Ip: 45.79.204.46
Host: 0.0.0.0:5002
Connection: close
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36
Accept: */*
Referer: *****
Accept-Encoding: gzip
Traceroute on IP
4 142 ms 141 ms 153 ms 116.119.68.60
5 140 ms 138 ms 140 ms be6391.rcr21.b015591-1.lon13.atlas.cogentco.com [149.14.224.161]
6 139 ms 139 ms 139 ms be2053.ccr41.lon13.atlas.cogentco.com [130.117.2.65]
7 144 ms 142 ms 142 ms 154.54.61.158
8 191 ms 190 ms 190 ms chinatelecom.demarc.cogentco.com [149.14.81.226]
9 299 ms * 299 ms 202.97.13.18
10 * 316 ms * 202.97.90.30
11 * 317 ms * 202.97.24.141
12 * * * Request timed out.
13 317 ms 308 ms 320 ms 220.191.200.166
14 334 ms 354 ms * 115.233.128.133
15 * * * Request timed out.
16 * * * Request timed out.
17 * * * Request timed out.
18 * * * Request timed out.
19 * * * Request timed out.
20 * * * Request timed out.
21 325 ms 325 ms 333 ms 183.136.225.35

Why am I getting an SSL socket timeout connecting to Keycloak?

I think this question can be rewritten to "Using Spring Boot and keycloak-spring-boot-starter, what happens after KeycloakSpringBootConfigResolver.resolve()?"
I have a custom keycloak config resolver:
public class CustomKeycloakConfigResolver
extends KeycloakSpringBootConfigResolver {
...
#Override
public KeycloakDeployment resolve(final HttpFacade.Request request) {
LOGGER.debug("-----------------------------------------------");
LOGGER.debug("Resolving Deployment for {}", request.getURI());
...
LOGGER.trace("---------- CREATING KEYCLOAK DEPLOYMENT ---------");
KeycloakDeployment keycloakDeployment =
KeycloakDeploymentBuilder.build(adapterConfig);
LOGGER.trace("---------- /CREATED KEYCLOAK DEPLOYMENT ---------");
return keycloakDeployment;
This pulls the KeycloakDeployment configuration from our database instead of from application.properties. Testing on a local docker swarm cluster, it works like a charm (but this is only on one machine, without SSL enabled, etc).
Pushing out to our QA environment (nginx on one machine with TLS termination, REST service on another, Keycloak on another, database provided by RDS), the generation of a KeycloakDeployment goes off without a hitch. This includes reaching out to .well-known/openid-configuration and resolving all of the Keycloak URLs, and printing both of the final trace() statements.
Almost immediately after (within 10-30ms) creating the KeycloakDeployment and returning it to the keycloak-spring-boot-starter framework, I receive a SocketTimeoutException exception. I can't tell from the exception what the system is trying to do when throws this exception, and I haven't been able to tell from https://github.com/keycloak/keycloak what the workflow is after the deployment is "resolved()".
So - what happens next?
A secured method is accessed
Spring Boot auth hands off to Keycloak auth
Keycloak auth generates a custom KeycloakDeployment
KeycloakDeployment is resolved - reaches out to Keycloak service and obtains the OIDC configuration
KeycloakDeployment is passed back to Keycloak auth framework
... Something happens that throws an immediate socket timeout exception...
Method is never invoked
How do I figure out what's happening in step 6? I find it hard to believe it's an actual socket timeout after only 20ms, and everything I think it should be accessing is up and responsive. But I'm willing to be wrong...
---- Original Question ----
I'm trying to get Keycloak working with a Spring Boot REST service behind an nginx proxy. TLS is terminated at the nginx server. Everything is in docker containers, but on separate machines (no kube, no swarm, etc).
Everything seems good. I can login to the master realm, create a new realm, add users, etc. However when the REST service tries to contact the Keycloak server (through the nginx proxy), I'm getting an SSL timeout error:
2022-03-22 18:59:13.384 INFO 26 --- [nio-8080-exec-3] o.keycloak.adapters.KeycloakDeployment : Loaded URLs from https://hostname/auth/realms/myrealm/.well-known/openid-configuration
javax.net.ssl|WARNING|18|http-nio-8080-exec-3|2022-03-22 18:59:13.409 UTC|SSLSocketImpl.java:1672|handling exception (
"throwable" : {
java.net.SocketTimeoutException: Read timed out
at java.base/sun.nio.ch.NioSocketImpl.timedRead(NioSocketImpl.java:283)
...
Thing is, this "timeout" happens almost instantaneously after the .well-known/openid-configuration response, so I'm skeptical it's even actually a timeout, unless the threshold is set to like 10ms by default or something.
I cranked up javax.net logging with System.setProperty("javax.net.debug", "ssl:all");, and I can't see anything obvious:
2022-03-22 18:59:13.384 INFO 26 --- [nio-8080-exec-3] o.keycloak.adapters.KeycloakDeployment : Loaded URLs from https://hostname/auth/realms/myrealm/.well-known/openid-configuration
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.385 UTC|SSLSocketOutputRecord.java:331|WRITE: TLSv1.2 application_data, length = 11
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.385 UTC|SSLCipher.java:1770|Plaintext before ENCRYPTION (
0000: 07 00 00 00 03 63 6F 6D 6D 69 74 .....commit
)
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.388 UTC|SSLSocketOutputRecord.java:346|Raw write (
0000: 17 03 03 00 23 00 00 00 00 00 00 00 80 9C 76 46 ....#.........vF
0010: 44 FA F9 3A A4 9B A1 B2 D8 9B 6A 69 76 C7 1A 3D D..:......jiv..=
0020: 94 C4 40 D2 D8 F2 E4 7E ..#.....
)
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.388 UTC|SSLSocketInputRecord.java:488|Raw read (
0000: 17 03 03 00 23 ....#
)
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.388 UTC|SSLSocketInputRecord.java:214|READ: TLSv1.2 application_data, length = 35
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.388 UTC|SSLSocketInputRecord.java:488|Raw read (
0000: 15 13 12 41 88 AD 18 6F B8 5E 25 90 9D BA 23 BF ...A...o.^%...#.
0010: B3 A5 A9 5E 61 FA 77 BD AE A4 C0 57 B2 1D 5B 18 ...^a.w....W..[.
0020: E8 C7 77 ..w
)
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.388 UTC|SSLSocketInputRecord.java:247|READ: TLSv1.2 application_data, length = 35
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.388 UTC|SSLCipher.java:1672|Plaintext after DECRYPTION (
0000: 07 00 00 01 00 00 00 00 00 00 00 ...........
)
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.388 UTC|SSLSocketOutputRecord.java:331|WRITE: TLSv1.2 application_data, length = 21
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.389 UTC|SSLCipher.java:1770|Plaintext before ENCRYPTION (
0000: 11 00 00 00 03 53 45 54 20 61 75 74 6F 63 6F 6D .....SET autocom
0010: 6D 69 74 3D 31 mit=1
)
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.390 UTC|SSLSocketOutputRecord.java:346|Raw write (
0000: 17 03 03 00 2D 00 00 00 00 00 00 00 81 6B 87 27 ....-........k.'
0010: 9C 91 53 E2 F8 70 1C D4 FA F3 4A 79 1B B0 11 05 ..S..p....Jy....
0020: 13 3E 4F 10 A8 E8 43 B3 BB FA 1E 48 82 DF 59 25 .>O...C....H..Y%
0030: CF 9D ..
)
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.392 UTC|SSLSocketInputRecord.java:488|Raw read (
0000: 17 03 03 00 23 ....#
)
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.392 UTC|SSLSocketInputRecord.java:214|READ: TLSv1.2 application_data, length = 35
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.392 UTC|SSLSocketInputRecord.java:488|Raw read (
0000: 15 13 12 41 88 AD 18 70 E3 20 7E 21 DA B0 24 28 ...A...p. .!..$(
0010: EF 6D EB BC 5C CE 5D 94 1D BC 04 BB F9 D1 3D 72 .m..\.].......=r
0020: 0C 71 83 .q.
)
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.392 UTC|SSLSocketInputRecord.java:247|READ: TLSv1.2 application_data, length = 35
javax.net.ssl|DEBUG|18|http-nio-8080-exec-3|2022-03-22 18:59:13.393 UTC|SSLCipher.java:1672|Plaintext after DECRYPTION (
0000: 07 00 00 01 00 00 00 02 00 00 00 ...........
)
javax.net.ssl|WARNING|18|http-nio-8080-exec-3|2022-03-22 18:59:13.409 UTC|SSLSocketImpl.java:1672|handling exception (
"throwable" : {
java.net.SocketTimeoutException: Read timed out
at java.base/sun.nio.ch.NioSocketImpl.timedRead(NioSocketImpl.java:283)
...
So between the well-known configuration call and the final timeout exception:
18:59:13.384
18:59:13.409
all of 25ms passes by - seems hard to believe there would be a legitimate timeout exception thrown, but I can't seem to get any more clue as to what is causing the timeout. The keycloak service definitely IS reachable, and responds quite quickly.
Nothing at all in the Keycloak logs, and not terribly much in the nginx logs:
[--- AUTH ---] [22/Mar/2022:19:19:56 +0000] [200] "POST /auth/realms/myrealm/protocol/openid-connect/token HTTP/1.1" "https://web.mycompany.com/"
[--- AUTH ---] [22/Mar/2022:19:19:57 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:19:57 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
2022/03/22 19:19:57 [info] 73#73: *659 client #.#.#.# closed keepalive connection
[--- AUTH ---] [22/Mar/2022:19:19:57 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:19:57 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:19:58 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:19:58 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
2022/03/22 19:19:58 [info] 73#73: *670 client #.#.#.# closed keepalive connection
2022/03/22 19:19:58 [info] 73#73: *668 client #.#.#.# closed keepalive connection
[--- AUTH ---] [22/Mar/2022:19:19:58 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:19:58 +0000] [200] "GET /auth/realms/myrealm/protocol/openid-connect/certs HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:19:58 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:19:58 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:19:59 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:19:59 +0000] [200] "GET /auth/realms/myrealm/protocol/openid-connect/certs HTTP/1.1" "-"
2022/03/22 19:19:59 [info] 73#73: *677 client #.#.#.# closed keepalive connection
2022/03/22 19:19:59 [info] 73#73: *675 client #.#.#.# closed keepalive connection
[--- AUTH ---] [22/Mar/2022:19:19:59 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:19:59 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:19:59 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:20:00 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
2022/03/22 19:20:00 [info] 73#73: *664 client #.#.#.# closed keepalive connection
2022/03/22 19:20:00 [info] 73#73: *666 client #.#.#.# closed keepalive connection
2022/03/22 19:20:00 [info] 73#73: *672 client #.#.#.# closed keepalive connection
2022/03/22 19:20:00 [info] 73#73: *682 client #.#.#.# closed keepalive connection
2022/03/22 19:20:00 [info] 73#73: *684 client #.#.#.# closed keepalive connection
2022/03/22 19:20:00 [info] 74#74: *686 client #.#.#.# closed keepalive connection
[--- AUTH ---] [22/Mar/2022:19:20:00 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:20:00 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:20:01 +0000] [200] "GET /auth/realms/myrealm/.well-known/openid-configuration HTTP/1.1" "-"
[--- AUTH ---] [22/Mar/2022:19:20:01 +0000] [200] "GET /auth/realms/myrealm/protocol/openid-connect/certs HTTP/1.1" "-"
[--- REST ---] [22/Mar/2022:19:20:01 +0000] [401] "GET /api/v1/stuff HTTP/1.1" "https://web.mycompany.com/"
Any help as to what's going on?
Other notes:
I've gone through the Setting Up a load balancer or proxy instructions from Keycloak. Specifically, the nginx server has the following:
upstream AUTH {
server #.#.#.#:8080;
server #.#.#.#:8080;
}
...
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_pass http://AUTH;
I think that covers bullet points 1 and 2.
Bullet point 3 is covered by the keycloak server. The standalone-ha.xml file has:
<subsystem xmlns="urn:jboss:domain:undertow:12.0" default-server="default-server" default-virtual-host="default-host" default-servlet-container="default" default-security-domain="other" statistics-enabled="true">
<buffer-cache name="default"/>
<server name="default-server">
<ajp-listener name="ajp" socket-binding="ajp"/>
<http-listener name="default" socket-binding="http" redirect-socket="https" proxy-address-forwarding="${env.PROXY_ADDRESS_FORWARDING:false}" enable-http2="true"/>
<https-listener name="https" socket-binding="https" ssl-context="applicationSSC" proxy-address-forwarding="${env.PROXY_ADDRESS_FORWARDING:false}" enable-http2="true"/>
<host name="default-host" alias="localhost">
<location name="/" handler="welcome-content"/>
<http-invoker http-authentication-factory="application-http-authentication"/>
</host>
</server>
and the container is launched with the environment variable
PROXY_ADDRESS_FORWARDING=true
I've verified with a false login that Keycloak is seeing the end user's IP address rather than the nginx server:
15:17:07,304 WARN [org.keycloak.events] (default task-14) type=LOGIN_ERROR, realmId=master, clientId=security-admin-console, userId=null, ipAddress=#.#.#.#, error=user_not_found, auth_method=openid-connect, auth_type=code, redirect_uri=https://host.name/auth/admin/master/console/#/realms/MyRealm/login-settings, code_id=..., username=foo, authSessionParentId=..., authSessionTabId=...
Where #.#.#.# is my IP address.

GIMP get current image reference number to operate on current image

I have more than one image open, and I'd like to run scrip-fu functions on the currently selected image. How can I get the image reference number to the currently selected image so I can use the reference in other functions (e.g. (gimp-image-width 7))? I'm using GIMP 2.10.12.
Using (gimp-image-list) lists all the image references:
> (gimp-image-list)
(12 #(12 11 10 9 8 7 6 5 4 3 2 1))
I've been using (gimp-image-latest) for this, which should work for the general case
(define (gimp-image-list-items)
(cadr (gimp-image-list)))
(define (gimp-image-latest)
(aref (gimp-image-list-items) 0))
(define img (gimp-image-latest))
Then it's in img. E.g.:
> (gimp-image-get-layers img)
(283 #(770 769 768 767 766 765 764 763 762 761 760 759 758 757 756 755 754 753 752 751 750 749 748 747 746 745 744 743 742 741 740 739 738 737 736 735 734 733 732 731 730 729 728 727 726 725 724 723 722 721 720 719 718 717 716 715 714 713 712 711 710 709 708 707 706 705 704 703 702 701 700 699 698 697 696 695 694 693 692 691 690 689 688 687 686 685 684 683 682 681 680 679 678 677 676 675 674 673 672 671 670 669 668 667 666 665 664 663 662 661 660 659 658 657 656 655 654 653 652 651 650 649 648 647 646 645 644 643 642 641 640 639 638 637 636 635 634 633 632 631 630 629 628 627 626 625 624 623 622 621 620 619 618 617 616 615 614 613 612 611 610 609 608 607 606 605 604 603 602 601 600 599 598 597 596 595 594 593 592 591 590 589 588 587 586 585 584 583 582 581 580 579 578 577 576 575 574 573 572 571 570 569 568 567 566 565 564 563 562 561 560 559 558 557 556 555 554 553 552 551 550 549 548 547 546 545 544 543 542 541 540 539 538 537 536 535 534 533 532 531 530 529 528 527 526 525 524 523 522 521 520 519 518 517 516 515 514 513 512 511 510 509 508 507 506 505 504 503 502 501 500 499 498 497 496 495 494 493 492 491 490 489 488))

My site is under attack by kinds of rainbowtable attack

My site's Tomcat log has many failure connection (ex 302, 404 status code). such as below. there are too many.
94.191.77.57 - - [16/Jun/2019:05:16:38 +0000] "GET /index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:38 +0000] "GET /phpmyadmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:38 +0000] "GET /phpMyAdmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:39 +0000] "GET /pmd/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:39 +0000] "GET /pma/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:39 +0000] "GET /PMA/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:41 +0000] "GET /PMA2/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:41 +0000] "GET /pmamy/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:41 +0000] "GET /pmamy2/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:42 +0000] "GET /mysql/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:42 +0000] "GET /admin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:42 +0000] "GET /db/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:42 +0000] "GET /dbadmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:45 +0000] "GET /admin/pma/index.php HTTP/1.1" 302
94.191.77.57 - - [16/Jun/2019:05:16:50 +0000] "GET /phpmyadmin2/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:50 +0000] "GET /phpMyAdmin-4.4.0/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:50 +0000] "GET /myadmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:51 +0000] "GET /myadmin2/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:51 +0000] "GET /xampp/phpmyadmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:51 +0000] "GET /phpMyadmin_bak/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:52 +0000] "GET /www/phpMyAdmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:53 +0000] "GET /tools/phpMyAdmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:53 +0000] "GET /phpmyadmin-old/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:53 +0000] "GET /phpMyAdminold/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:53 +0000] "GET /phpMyAdmin.old/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:54 +0000] "GET /pma-old/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:54 +0000] "GET /claroline/phpMyAdmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:54 +0000] "GET /typo3/phpmyadmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:55 +0000] "GET /phpma/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:55 +0000] "GET /phpmyadmin/phpmyadmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:55 +0000] "GET /phpMyAdmin/phpMyAdmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:55 +0000] "GET /phpMyAbmin/index.php HTTP/1.1" 302 -
94.191.77.57 - - [16/Jun/2019:05:16:56 +0000] "GET /phpMyAdmin__/index.php HTTP/1.1" 302-
94.191.77.57 - - [16/Jun/2019:05:16:57 +0000] "GET /phpMyAdmin+++---/index.php HTTP/1.1" 302 -
I think it needs to prepare SQL injecttion attack.
What's your opinion?
You should limit the number of failed requests allowed from any IP address. I'd put the site behind a proxy server such as CloudFlare.

Using sed, delete everything between two characters

How can I delete symbols, whitespaces, characters, words everything between two characters in a line?
My 5-line file is:
"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; InfoPath.1)" 120.94.30.12 264 556 -
"Skype for Macintosh" 120.94.30.9 1038 482 -
-129.94.30.4 217 309 -
"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; InfoPath.1)" 120.94.30.8 1197 747 -
"¢¢HttpClient" 120.94.30.12 594 231 -
I want to delete everything comes in between " and " (including the " characters) so that the required output should be:
120.94.30.12 264 556 -
120.94.30.9 1038 482 -
-120.94.30.4 217 309 -
120.94.30.8 1197 747 -
120.94.30.12 594 231 -
You mean like this?
sed 's/"[^"]*"//' file
echo '"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; InfoPath.1)" 120.94.30.12 264 556 -' |\
sed -e 's/".*"\(.*\)/\1/g'