Disable Compression in WebSphere Liberty Profile 8.5.x - iis

I have a web application that is running on WebSphere Liberty Profile 8.5.x, which is located in a private LAN. I have set up an IIS reverse proxy in a DMZ that points to the application server in the LAN and has a URL Rewrite outbound rule. URL Rewrite outbound rules will not work if the content is compressed.
I have zero experience with WebSphere, and the people who set up the application server are unavailable. I have searched and can't find any answers -- at least that I can understand with my lack of experience.
So, is there a way to disable compression in WebSphere Liberty Profile 8.5.x, and if so, how exactly do I go about doing it?

Instead of working with some reverse proxy config, I'd suggest you to install supported WebSphere Plugin for IIS.
You can download it from WebSphere for Developers downloads or if you have production license:
Web Server Plug-ins for IBM WebSphere Application Server Part 1 and Part 2
https://www14.software.ibm.com/webapp/iwm/web/preLogin.do?source=swerpws-wasdevdl85
Then install plugin and configure for MS IIS
Then configure plugin to work with Liberty. Although this page is mentioning IBM Http Server, same configuration steps are for any web server supported by plugin.

It turns out I didn't need to change any WebSphere Liberty settings at all. Here's how I fixed it:
In the URL Rewrite module, I added the HTTP_ACCEPT_ENCODING server variable.
In the Server Variables section of the Inbound Rule, I added HTTP_ACCEPT_ENCODING with an arbitrary value (I used "asdf") and set Replace to true.
I edited the web.config, and changed the value of "HTTP_ACCEPT_ENCODING" serverVariables node to an empty string.
Now IIS only accepts non-compressed responses, and the Outbound Rule works as expected.

Related

IIS option "Unlisted File Extensions are not allowed" filtering all servlet calls to WebSphere

We are running IIS 8.5.9600.16384 with Windows 2012 R2, with IIS routing URLs that map to servlets to a WebSphere Application Server 8.5 instance. In IIS, we have configured a web server instance, where it serves static files from the disk, at the same time the IIS-WAS connector ensures URLs that call the Java server are routed properly. This configuration is running correctly with no issues.
As part of our security hardening process we need to enable the "Unlisted File Extensions are not allowed" option, however it ends up blocking URLs that should be routed to our WAS server. We added a white list of allowed extensions (htm, html, js, xml, etc), along with a period (".") - which was recommended on stackoverflow. The files from the static site are being served properly, but IIS is still blocking all the servlet application calls.
Is it possible to enable this option for this configuration? Or is IIS truly unable to route extensionless-URLs to WAS when this option is enabled?

Switch ColdFusion 11 from built in web server to IIS

I originally installed ColdFusion 11 in a local environment (windows 7) and selected "Use built in web server". Everything was working pretty good. Now months later, I realize I need to use a real web server for URL rewrites (Apache, IIS, etc) but there is no documentation I can find on how to do so.
I have attempted looking through the administrator's panel for any information, but couldn't even get a jumping off point. Any assistance would be greatly appreciated.
First, it sounds like you need to decide which web server you want/need to use and that could be determined by where you'll end up hosting your site. CF code is quite portable but if you're doing URL rewrites, file system access, etc... then you need to code those to match the production environment, otherwise you might find yourself having to rewrite and retest all that again.
As commented above, a lot of information about configuring CF for web servers is available by searching. You'll first need to install & configure your web server, so search around that first. Then you'll need to configure the web server to understand which requests to pass to ColdFusion's engine.
If it's IIS then you need to make sure IIS is installed and the following components are installed: ISAPI Extensions, ISAPI Filters, CGI, ASP .NET
Then configure an IIS site to point to your CF code and after that use the "Web Server Configuration Tool" application (installed with CF) that will associate the relevant file types with ColdFusion.
Most of the time it's as simple as that.

Hosting TeamCity 8.1 & YouTrack in IIS 7.5

I am a newbie to IIS (and administrative tasks in general). I am trying to host TeamCity and YouTrack in IIS to allow other web applications to be run on the same port. Solving the issue for TeamCity should also solve it for YouTrack, so this post is only about getting TeamCity to work.
I have followed the guide on A Step by Step Guide to Hosting TeamCity in IIS 7 but I cannot get it to work. Whenever I enter teamcity.mydomain.com into the browser I end up at the default website (default IIS website that comes when installing IIS).
TeamCity is set to run on port 8080. Entering localhost:8080 in the browser opens up the TeamCity start page. Entering teamcity.mydomain.com opens up the default IIS website (as mentioned above).
The port number I changed in server.xml (TeamCity) is the one on the following line:<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
The server farm for TeamCity is using IP 127.0.0.1 (is this correct, or should it be the internal IP on the LAN?). URL rewrite rule has been setup according to the link above: Using wildcards with "*" pattern and a local grouping with {HTTP_POST}, Matches the Pattern, where pattern is "teamcity.mydomain.com". The default IIS website is unchanged.
Any help would be highly appreciated.
Set BaseUrl as teamcity.mydomain.com

Configuring IIS 7.0 + JBoss 8 Wildfly via mod_jk

I'm trying to get my Win2K8 Server (Intel Xeon 64bit machine) working with IIS7 web server and the latest release of JBoss AS (8 Wildfly).
I followed many tuts on how to get that done and I ended up with:
C:\mod_jk
\bin
isapi_redirect.dll (x86_64 v.1.2.40 for iis)
isapi_redirect.properties (all paths correctly in place)
\log
\conf
uriworkermap.properties (containing simply /mycontext/*=myworker
workers.properties (containing myworker's configuration on ajp port 8009)
I omitted jk details because I never reach the filter (isapi_redirect.log is never created). However, Wildfly is configured for ajp and listening to 8009 port.
In IIS 7.0 I added the isapi filter and set the right permissions to all, according to the official documentation and several tutorials.
I keep getting a
HTTP Error 500.0 - Internal Server Error
Calling LoadLibraryEx on ISAPI filter “C:\Tomcat\ISAPI\isapi_redirect.dll” failed
when visiting www.myhost.com/mycontext/
Enabling 32 bit appPool makes the error change in a common 404 - not found.
Can you suggest me a checklist to follow to make the whole thing work? Thank you.
I ended up using ARR.
http://www.iis.net/downloads/microsoft/application-request-routing
That avoids AJP by simply forwarding all traffic to JBoss 8080 port.

IIS -> Isapi_Redirect -> Tomcat

I've been trying for days to get Tomcat up and running through IIS via the Jakarta Connector.
I've followed all of Microsoft's instructions -- put the connector .dll in %tomcatdir%\bin\win32\i386\, added the registry entry, added a filter (pointing to the .dll) to the default web site... and yet, any time I try to access a Tomcat web app, I get the "You are not authorized to view this page" error.
Has anyone experienced this? Help!
Thanks,
-Dan
http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.14/isapi_redirect-1.2.14.exe
I use this redirect with Tomcat 5.5 and IIS 5 or 6. I haven't tried it with IIS 7.
You have to modify the uriworkermap.properties file to choose which paths to redirect, but besides that it works pretty much straight up. It adds all the registry garbage for you.
Ah, except on IIS 6 you have to add the isapi redirect.dll into its application whitelist.
Try this mate, it can help you.
http://itgration.blogspot.com/2016/04/configuring-tomcat-connector-for-iis-8.html
It tells you how to configure access to tomcat website via IIS and the necessary to set up tomcat server as a windows service and then forward the website to IIS via port 80. You will do this by installing a custom ISAPI filter in IIS that understands how to use the AJP protocol (Apache JServ Protocol) to communicate with tomcat. The main idea is to use Tomcat Connector ISAPI available to download from apache web site.
I used it with IIS 8 and 7

Resources