How to host elastic search on IIS Server - iis

I want to host elastic search on IIS, so that i can consume it in my app.
Right now I am running it on localhost and able to access it using console application.
Any help is appreciated.

To host elastic search on IIS, I found the link ulyaoth.net/resources provided by Val very useful.
Trying to write minimum steps that works for me.
Install Microsoft Web Platform Installer 5.0 or above in your IIS
(if not available).
In Web Platform Installer, Search for "Application Request Routing
3.0". (you can type ARR to filter/search this). And Install.
Open IIS Manager.
Create a website. In Physical path, fill path of "Elastic Search".
Create Reverse Proxy.
Bingo, Now your elastic search is available on website url. To run elastic search in background. you can run this as service. For detail info use above link.

Related

Unable to host Blazor application

I am unable to get a Blazor app working while hosting the application as an IIS application on my local Windows 10 machine. The app is very simple, with just one page with minimal components - even simpler than the default Blazor app provided.
These are my steps:
Click on publish app
Select Folder, note it's going to ...\bin\Release\net5.0\browser-wasm\publish\
Open IIS, navigate to Default Web Site
Right-click Default Web Site and select Add Application
Select physical path as the path above, and host at www.NAME.com
Click Browse.. to view the app at www.NAME.com on *:80
Page displayed is the welcome page of IIS
Attempted Solution 1: Install URL Rewrite
Attempted Solution 2: Go to Hosts (in System32) and tried adding 127.0.0.1 or 127.0.0.1::80 followed by www.NAME.com
Attempted Solution 3: In index.html, edit the base element to include the link <base href="/NAME/" />
Attempted Solution 4: Instead of adding an application under Default Website in IIS, add it as a website instead
Attempted Solution 5: Gave IIS_IUSRS full permissions to web.config (Image)
None of the attempted solutions worked. I just started using Blazor yesterday and I am very new to this. Am I doing something wrong? Thank you!
Please refer to this tutorial, I think is one of the best tutorial to achieve your goals:
https://blog.medhat.ca/2020/08/deploy-client-side-blazor-web-api-to.html?m=1
Remember that the configuration of the hostname in your hosts file is related to your machine only
So, in order to allow the students to access your IIS published site you need:
Register a hostname in a DNS server that all the computer of the students will use to resolve your machine name. I.e. if your machine should be accessible with www.name.com you need your DNS server resolves this name with your local IP address
To use the https protocol you need a certificate on your local machine, loaded in your IIS configuration, but the same certificate has to be available to every computer of your students.
I think the better and simpler solution is to use your local machine name, probably using your full DNS name, and allows the students to access the site using this name on their browser.
In this case you can use your local development certificate to allow https connection
This certificate is already installed on your machine for development purpose.
Every concept I've described is well documented on the web and here on the SO.

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.

Run Elastic Search on IIS (windows)

I am trying to configure elastic search to run on my windows 7 machine. I have successfully installed the service.
However i am trying to browse http://localhost:9200/. The Browser returns the page is not available.
I am wondering if we can configure it to run on IIS Server, As we can host kibana on it. (https://blog.basefarm.com/blog/how-to-install-logstash-on-windows-server-2012-with-kibana-in-iis/)

Binding an IIS website to a second ColdFusion instance

I have a Windows 2008 R2 server, IIS7, Coldfusion 9.0.2. I created a 2nd CF instance, created an IIS website, used the web server configuration tool to bind the IIS website to the CF instance. Restarted IIS & CF windows services. It does not work as expected. It does not look like the IIS website is actually bound to the 2nd CF instance. With both the Windows IIS service and the new CF service running, I am able to hit the website and click around it.I then stop the CF service and the website still works. I would expect the website to not work when the CF Windows service was stopped. Any ideas as to what is going on?
Thanks ~Joe~
Here are the steps I did to create everything
CF admin > instance manager > Add New Instance with create Windows service option
create the website in IIS
remove the windows CF service
create a windows service and configure it to use a separate jvm.config file
restart IIS & CF services
use the web server configuration tool to bind the new CF instance to the new IIS website and checked off to configure web server for CF9 applications
possible reasons are
1) web config tool created a new connector but it points to wrong instance.
2) your website is using the wrong connector
3) the website is inheriting the global connector instead
every time you use the web config tool to enable cf on a site it creates a new connector. this doesn't serve much purpose if you have once instance, so for reference you are better off to just add the handlers manually and use existing connector.
for multiple instance, you only need to use the web config tool ONCE to create the new connector, then just add handlers manually to any site you want to use that connector.
this way you only have as many connectors as you have instances, so it doesn't get confusing.
first we need to check which connector your site is using, so go into iis and check the cfm wildcard handler, and see what connector it points to, it should be different than your other site.
so your first site should for example be using the conenctor in
C:\ColdFusion9\runtime\lib\wsconfig\1
and 2nd site using C:\ColdFusion9\runtime\lib\wsconfig\2
the numbers will differ according to how many times you have used web.config though.
in these connector folders open the file jrun_iis6_wildcard.ini
and look at the line
bootstrap=127.0.0.1:51011
the proxy port should be different for multiple instances.
so on the connector for instance2, it should have a different port than the connector for instance1, if not, if you have any other connectors, then check the rest as well.
If they all have the same port, then they are all pointing to the same instance.
In which case, you simply need to change the port for the conenctor that SHOULD be pointing to instance2.
Generally CF just increments the port for each instance, so if it says 51011 then change it to 51012 and it should be working.
You should also make sure instance 2 is running by connecting to it using the built in web server, if you look in your cfadmin in the instance manager, it will have a link to open the cfadmin for each instance on the native port.

WiX 3.7 IIS Setup

When running our installer, we have it configured to setup 3 websites in IIS, before the upgrade this worked as expected, even if the default website (or any site listening on the same port) was still present.
If the website listening to Port 80 was already started, WiX would create the website from our installer, and just not start it (which is what I'd expect). Since upgrade to 3.7, however, what I've found is that the installer does not create the website if there is any other site configured in IIS that's listening to the same port.
Is there something missing in the WiX setup that I need to add to force WiX to add the website from our installer, or is this just a known issue with creating websites via WiX?
Edit:
Looking into this further, it appears that the website is checked by the port, rather than by name. If I have "Default Website" on port 80, any applications that are under the website I have in the installer are configured under the Default Website.
The IIS CustomActions in the WiX toolset use the "natural key" to find the web site which is the ip:port:header combination. Most websites, only the port is specified. In you scenario, I expect the WiX toolset found the existing website and "fixed it" based on the specifications in your installation package.
Thanks Rob, I managed to fix the issue by setting the ConfigureIfExists flag to true, which created the site as I'd expected it to originally.

Resources