|Number of votes:||11|
For a long time I have been struggling with getting EPiServer Search up and running on a server with a public url. Today I also had to struggle with getting the service up and running with SSL. So I thought I should share my experience with you and try to collect a couple resources that might help you getting EPiServer Search up and running.
Please feel free to ad comments about this issue as well
If so you have to make sure that you add <serviceHostingEnviroment multipleSiteBindingEnable= ”true”>. What is multiple bindings then… well if you are using yoursite.se and yoursite.com you have multiplebindings in your IIS instance for that specific website.
<system.serviceModel>..... <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" /> .... </system.serviceModel>
If everything is working as expected you should be able to browse to the “indexingservice.svc”-file.
You should get this screen:
First thing you should look at is if you have the Indexingservice installed on your server. Check the Deployment Center for the EPiServer Search module. Second make sure you have the folder specified in web.config for indexingservice. Should be a folder in your wwwroot-folder “Indexingservice/indexingservice.svc”
Still not luck with the service?
Ok now we need to make sure we have the WCF installed correctly on the IIS. Todo that you can ran the following command in your Command Prompt:
SystemServiceModelReg.exe – The tool can be found in the following directory: %SystemRoot%\Microsoft.Net\Framework\v3.0\Windows Communication Foundation\
There are a few thing you could check if you still have no working index and search on you website.
Last but not least. If you have SSL enabled on your website you will get a 404 message for your service. You will need to change some settings in web.config. To enable wcf service to work with SSL you just need to add the following:
<binding name="IndexingServiceCustomBinding" maxBufferPoolSize="1073741824" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647"> <security mode="Transport"> <transport clientCredentialType="None"></transport> </security> <readerQuotas maxStringContentLength="10000000" /> </binding>
The important part is to add:
<security mode="Transport"> <transport clientCredentialType="None"></transport> </security>
If your website use both secure and none secure http you can and a new CustomBinding to your web.config