Am using Windows and the reverse proxy to get the https redirect but upon startup of 4.9 it hangs (note cannot be stopped or killed - requires system reboot to resolve) and this is all that is present in the log file. Was running 4.6 prior to 4.9 install.
2020-07-13 14:06:00 INFO: HikariPool-1 - Starting...
2020-07-13 14:06:01 WARN: Registered driver with driverClassName=com.mysql.jdbc.Driver was not found, trying direct instantiation.
2020-07-13 14:06:11 ERROR: HikariPool-1 - Exception during pool initialization. - Received fatal alert: handshake_failure - SSLHandshakeException (... < DataManager:139 < *:89 < Context:292 < Main:137 < ...)
2020-07-13 14:06:11 ERROR: Main method error - Received fatal alert: handshake_failure - SSLHandshakeException (... < DataManager:139 < *:89 < Context:292 < Main:137 < ...)
2020-07-13 14:06:11 WARN: JNA: Callback org.traccar.WindowsService$ServiceMain@10289886 threw the following exception - Received fatal alert: handshake_failure - SSLHandshakeException (... < DataManager:139 < *:89 < Context:292 < Main:137 < ...)
web.config was not updated by 4.9 installation and looked like below:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<outboundRules>
<rule name="ReverseProxyOutboundRule1" preCondition="ResponseIsHtml1">
<match filterByTags="A, Form, Img" pattern="^http(s)?://localhost:8082/(.*)" />
<action type="Rewrite" value="http{R:1}://mysite.com.au/{R:2}" />
</rule>
<rule name="ReverseProxyOutboundRule2" preCondition="ResponseIsHtml1">
<match filterByTags="A, Form, Img" pattern="^http(s)?://localhost:8082/(.*)" />
<action type="Rewrite" value="http{R:1}://mysite.com.au/{R:2}" />
</rule>
<preConditions>
<preCondition name="ResponseIsHtml1">
<add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />
</preCondition>
</preConditions>
</outboundRules>
<rules>
<rule name="ReverseProxyInboundRule1" enabled="true" stopProcessing="true">
<match url="(.*)" />
<action type="Rewrite" url="http://localhost:8082/{R:1}" />
<serverVariables>
<set name="HTTP_SEC_WEBSOCKET_EXTENSIONS" value="" />
</serverVariables>
</rule>
<rule name="HTTP/S to HTTPS Redirect" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:0}" redirectType="Permanent" />
</rule>
<rule name="ReverseProxyInboundRule2" enabled="true" stopProcessing="true">
<match url="(.*)" />
<action type="Rewrite" url="http://localhost:8082/{R:1}" />
</rule>
</rules>
</rewrite>
<urlCompression doStaticCompression="false" doDynamicCompression="false" />
</system.webServer>
</configuration>
Try using standard JRE instead of the bundled one.
Okay - how do I unbundle the included version?
You can specify Java location in the service configuration.
I mean Windows service configuration in your case.
So install JRE and configure a JAVA path to use it
You have to configure the path for "traccar" windows service. You should be able to use SC.exe command line tool for that.
Install Java for windws repositories
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
Navigate to the service, then modify the image name to reflect the new path
As always, make a backup of the system PRIOR.
orig
C:\Program Files\Traccar\jre\bin\java.exe -Duser.dir="C:\Program Files\Traccar" -jar "C:\Program Files\Traccar\tracker-server.jar" --service ".\conf\traccar.xml"
replace
C:\Program Files\Java\jre1.8.0_241\bin\java.exe -Duser.dir="C:\Program Files\Traccar" -jar "C:\Program Files\Traccar\tracker-server.jar" --service ".\conf\traccar.xml"
Am using Windows and the reverse proxy to get the https redirect but upon startup of 4.9 it hangs (note cannot be stopped or killed - requires system reboot to resolve) and this is all that is present in the log file. Was running 4.6 prior to 4.9 install.
web.config was not updated by 4.9 installation and looked like below:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <outboundRules> <rule name="ReverseProxyOutboundRule1" preCondition="ResponseIsHtml1"> <match filterByTags="A, Form, Img" pattern="^http(s)?://localhost:8082/(.*)" /> <action type="Rewrite" value="http{R:1}://mysite.com.au/{R:2}" /> </rule> <rule name="ReverseProxyOutboundRule2" preCondition="ResponseIsHtml1"> <match filterByTags="A, Form, Img" pattern="^http(s)?://localhost:8082/(.*)" /> <action type="Rewrite" value="http{R:1}://mysite.com.au/{R:2}" /> </rule> <preConditions> <preCondition name="ResponseIsHtml1"> <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" /> </preCondition> </preConditions> </outboundRules> <rules> <rule name="ReverseProxyInboundRule1" enabled="true" stopProcessing="true"> <match url="(.*)" /> <action type="Rewrite" url="http://localhost:8082/{R:1}" /> <serverVariables> <set name="HTTP_SEC_WEBSOCKET_EXTENSIONS" value="" /> </serverVariables> </rule> <rule name="HTTP/S to HTTPS Redirect" enabled="true" stopProcessing="true"> <match url="(.*)" /> <conditions> <add input="{HTTPS}" pattern="^OFF$" /> </conditions> <action type="Redirect" url="https://{HTTP_HOST}/{R:0}" redirectType="Permanent" /> </rule> <rule name="ReverseProxyInboundRule2" enabled="true" stopProcessing="true"> <match url="(.*)" /> <action type="Rewrite" url="http://localhost:8082/{R:1}" /> </rule> </rules> </rewrite> <urlCompression doStaticCompression="false" doDynamicCompression="false" /> </system.webServer> </configuration>