Question

I set up merge replication web sync using a pull subscription.

When I try to start the merge agent at the client side I get this error,

The Merge Agent could not connect to the URL 
'http://address.com/MergeReplication/replisapi.dll' during Web synchronisation.
Please verify that the URL, Internet login credentials and proxy server settings are 
correct and that the Web server is reachable.

When I browse to the address http://address.com/MergeReplication/replisapi.dll?diag it works fine when I specify the same login credentials as I did for the subscription.

If we have a think about some of the possible causes, proxy server, we're not using that. URL is fine (as far as I can tell). Login credentials are OK as far as I can tell too.

The other thing I noticed is that I can see the https traffic in fiddler when I put the ?diag address in my browser, but when I start the merge agent I don't see the traffic in fiddler.

UPDATE:

I used wireshark to look at the traffic going between my subscription PC, and the IIS server. When I run the subscription agent I get this traffic,

TLSv1 Client Hello
TLSv1 Server Hello
TLSv1 Client Key Exchange
TLSv1 Change Cipher Spec, Encrypted Handshake Message
TCP https [FIN, ACK]
TCP https [RST, ACK]

The last item there RST is hilighted as red, and does not appear when I browse to the ?diag page.

Perhaps there is a problem with the certificate I have. I created a self signed security certificate and installed it on my PC. When I browse to the ?diag page I don't get a security certificate error.

Was it helpful?

Solution

The answer at this point appears to be quite simple. I was using a different domain account to run the subscription agent. I had to log into my machine with that account and install the security certificate.

OTHER TIPS

I does have to do with the certificate, although I don't see https: in your address.

ON THE PUBLISHER SIDE: If you use IIS7 you can click server certificates and make a self signed one. (publishing server) IIS6 you go look at the tab that says logs. there is a number W3SVC_, thats the site number. look up selfssl for more info [cmd] selfssl /N:CN=address.com /p:443 /V:9999 /S:_

then try your https://address.com/MergeReplication/replisapi.dll?diag NOTE WITH THE [HTTPS:] !!!

your browser will whine about not trusting the site, go ahead anyway, and enter your password

... not finished yet

from the Publishing server you need to export that certificate to a .cer file orwhatever


in iis6 somewhere in security edit/view certificate has copy to funtion save the certificate without the private keys and send to the subscriber pc

iis7 has an export option IIRC

SUBSCRIPTION PC

[start, run], mmc, add client certificates , (as computer) import into the trusted providers CA root and trusted publishers this .cer (or pki ) file

When you go back to the ie8 (a non ms browser won't work - the imported keys are used by MS products including your SQL) -- you'll not see the warning of untrusted site anymore (and you're good to go)

only when this is gone will [The Merge Agent could not connect to the URL 'http://address.com/MergeReplication/replisapi.dll' during Web synchronisation. Please verify that the URL, Internet login credentials and proxy server settings are correct and that the Web server is reachable. ] be solved

Licensed under: CC-BY-SA with attribution
Not affiliated with dba.stackexchange
scroll top