Bilal-S / iis2tomcat

AJP Connector between Internet Information Services (IIS) and Apache Tomcat
http://www.boncode.net/boncode-connector
49 stars 32 forks source link

AJP request with invalid prefix (18) #108

Closed PaoloBiondi closed 2 years ago

PaoloBiondi commented 2 years ago

Hello, my Coldfusion server has the following setup: IIS -> boncode 1.3 -> undertow, Undertow is bundled with Commandbox from Ortus solutions. I have an issue with requests that randomly fail with a "502 Bad Gateway" error from IIS, from what I see they don't get past the connector as they are not tracked by FusionReactor.

In undertow console output I find many entries like this: [ERROR] io.undertow.request: UT005011: Ignoring AJP request with prefix 18

Some additional details are provided in the topic I started on CommandBox forum: https://community.ortussolutions.com/t/boncode-commandbox-ajp-connection-error/9103/4

Is there anything else I can test or check?

Bilal-S commented 2 years ago

@PaoloBiondi I read through the command box feedback. If you are not using EnableAdobeMode can you provide some log info? Ideally a packet capture from Wireshark but also an exchange from BonCode for the requests that show this error? You can use the LogIPFilter setting to get logs only for one IP. See setting documentation: http://www.boncode.net/connector/webdocs/Tomcat_Connector.htm#_Toc38268635

Also your current settings file would be helpful. Check active setting file like so on localhost/server: http://localhost/a.cfm?BonCodeConfigList=true You can sent to my gmail (see documentation).

PaoloBiondi commented 2 years ago

Hello Bilal, I sent logs to your gmail, my current settings are:

<Settings>
    <Server>127.0.0.1</Server>
    <Port>8060</Port>
    <MaxConnections>1000</MaxConnections>
    <EnableRemoteAdmin>False</EnableRemoteAdmin>
    <EnableHeaderDataSupport>True</EnableHeaderDataSupport>
    <ForceSecureSession>False</ForceSecureSession>
    <AllowEmptyHeaders>True</AllowEmptyHeaders>
    <FlushThresholdTicks>50000</FlushThresholdTicks>
    <LogLevel>0</LogLevel>
    <LogDir>C:\vhosts\gringott\logs\BonCode</LogDir>
    <PacketSize>65536</PacketSize>
</Settings>

Boncode version is 1.0.41, BonCode Active Configuration is:

BONCODEAJP13_PORT = 8060
BONCODEAJP13_SERVER = 127.0.0.1
BONCODEAJP13_AUTOFLUSHDETECTION_TICKS = 50000
BONCODEAJP13_AUTOFLUSHDETECTION_BYTES = 0
MAX_BONCODEAJP13_CONCURRENT_CONNECTIONS = 1000
BONCODEAJP13_LOG_LEVEL = 0
BONCODEAJP13_LOG_DIR = C:\vhosts\gringott\logs\BonCode
BONCODEAJP13_LOG_FILE = BonCodeAJP13Connection
BONCODEAJP13_ENABLE_REMOTE_MANAGER = False
BONCODEAJP13_AUTOCOMPRESS = False
BONCODEAJP13_TEXT_MARK = System.String[]
BONCODEAJP13_MANAGER_URLS = System.String[]
BONCODEAJP13_MANAGER_FLEXURLS = System.String[]
BONCODEAJP13_HEADER_SUPPORT = True
BonCodeAjp13_DocRoot = C:\vhosts\gringott\httpdocs\
BonCodeAjp13_PhysicalFilePath = C:\vhosts\gringott\httpdocs\index.cfm
BONCODEAJP13_BLACKLIST_HEADERS = URL,SERVER_SOFTWARE,SERVER_NAME,SERVER_PROTOCOL
BONCODEAJP13_WHITELIST_HEADERS = 
BONCODEAJP13_FLUSH_TIMEOUT = 30
BONCODEAJP13_SERVER_READ_TIMEOUT = 120000
BONCODEAJP13_SERVER_WRITE_TIMEOUT = 0
BONCODEAJP13_FORCE_SECURE_SESSION = False
BONCODEAJP13_REMOTEADDR_FROM = 
BONCODEAJP13_ALLOW_EMTPY_HEADERS = True
BONCODEAJP13_PATHINFO_HEADER = xajp-path-info
BONCODEAJP13_ENABLE_HTTPSTATUSCODES = True
BONCODEAJP13_TOMCAT_DOWN_URL = 
BONCODEAJP13_TOMCAT_STREAM_ERRORMSG = 
BONCODEAJP13_TOMCAT_TCPCLIENT_ERRORMSG = 
BONCODEAJP13_PATH_PREFIX = 
MAX_BONCODEAJP13_PACKET_LENGTH = 65536
MAX_BONCODEAJP13_USERDATA_LENGTH = 65530
BONCODEAJP13_ENABLE_CLIENTFINGERPRINT = False
BONCODEAJP13_FINGERPRINTHEADERS = REMOTE_ADDR,HTTP_ACCEPT,HTTP_ACCEPT_CHARSET,HTTP_ACCEPT_ENCODING,HTTP_ACCEPT_LANGUAGE,HTTP_USER_AGENT,UA_CPU,REMOTE_HOST
BONCODEAJP13_SKIP_IISCUSTOMERRORS = False
BONCODEAJP13_LOG_IPFILTER = 
BONCODEAJP13_REQUEST_SECRET = 
BONCODEAJP13_FORCE_GC = False
BONCODE_MODCFML_SECRET = 
BONCODE_DOCROOT_OVERRIDE =
Bilal-S commented 2 years ago

Response via email sent.

PaoloBiondi commented 2 years ago

Hello Bilal, thank you for your email, after a few weeks of testing I see that the number of errors dropped.

It looks like the problem was solved disabling the connection pool, setting MaxConnections to 0 in Boncode configuration file.

It’s not the optimal solution but at the moment I have no more time to play with it.