469,934 Members | 2,757 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,934 developers. It's quick & easy.

Link checker in ASP

Hi,

How can I check a link in ASP?

I need to verify the exact link, just as http://validator.w3.org/checklink
performs the validation -
e.g.: if a user inserts http://www.exampleURL.com, i'd like to verify
whether it's
http://www.exampleURL.com OR
http://exampleURL.com OR
http://www.exampleURL.com/home.asp

How can I do it?

Thanks, Gabi

Oct 13 '07 #1
6 2281
Gabriella wrote on 13 okt 2007 in
microsoft.public.inetserver.asp.general:
I need to verify the exact link, just as
http://validator.w3.org/checklink performs the validation -
e.g.: if a user inserts http://www.exampleURL.com, i'd like to verify
whether it's
http://www.exampleURL.com OR
http://exampleURL.com OR
http://www.exampleURL.com/home.asp
All three could be valid, and some could be out temporarily.

Server.XMLhttp requesing the headers for a status = 200 answer should do
the trick.

<http://classicasp.aspfaq.com/general...contents-of-a-
remote-web-page.html>

--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)
Oct 13 '07 #2
Hi,
I understand that all three URLs are possible, but I want to know
WHICH ONE is being used by the webserver.
If you look at http://www.rsizr.com you will see they redirect you to
http://rsizr.com - that's what I'd like to know!
That's what http://validator.w3.org/checklink gives you.
Server.XMLhttpRequest only tells you, according to the status number,
whether this URL is broken or valid. Not good enough.
I need to know which exact URL is being used.

Thanks, Gabi.

Oct 14 '07 #3
"Gabriella" <fr********@yahoo.comwrote in message
news:11**********************@k35g2000prh.googlegr oups.com...
Hi,
I understand that all three URLs are possible, but I want to know
WHICH ONE is being used by the webserver.
If you look at http://www.rsizr.com you will see they redirect you to
http://rsizr.com - that's what I'd like to know!
That's what http://validator.w3.org/checklink gives you.
Server.XMLhttpRequest only tells you, according to the status number,
whether this URL is broken or valid. Not good enough.
I need to know which exact URL is being used.
I'm not sure what Server.XMLhttpRequest is but I'll assume we are actually
talking about MSXML2.ServerXMLHTTP.3.0.

The site you give as an example is responding with a 301 Moved Permanetly
status and carries the header Location: http://rsizr.com.

ServerXMLHTTP will internally follow this redirection and will return
normally with a 200 response. The problem is that there is no way to
determine the final URL used internally to complete the request with MSXML3.
MSXML6 does provide an option to discover this.

The best and most compatible way is to use the underlying WinHTTP component
which on Win2000 SP2 or higher is present without additional installs:-

Function FinalURL(rsURL)

Dim oWinHTTP
Const WinHttpRequestOption_URL = 1

Set oWinHTTP = CreateObject("WinHttp.WinHttpRequest.5.1")

oWinHTTP.Open "HEAD", rsURL, False
oWinHTTP.Send

FinalURL = oWinHttp.Option(WinHttpRequestOption_URL)

End Function

sFinalURL = FinalURL("http://www.rsizr.com/")

You should note however that some sites still rely on HTML meta tags to
proform a similar function. In those cases this technique isn't going to
help.
--
Anthony Jones - MVP ASP/ASP.NET
Oct 14 '07 #4
Thanks Anthony, I've tried it and I get the following error:
"A connection with the server could not be established" right after
calling FinalURL method in line:
sFinalURL = FinalURL("http://www.rsizr.com/")
the error is displayed will every URL I try...
Any ideas why?
Gabi.

Oct 15 '07 #5
"Gabriella" <fr********@yahoo.comwrote in message
news:11*********************@q3g2000prf.googlegrou ps.com...
Thanks Anthony, I've tried it and I get the following error:
"A connection with the server could not be established" right after
calling FinalURL method in line:
sFinalURL = FinalURL("http://www.rsizr.com/")
the error is displayed will every URL I try...
Any ideas why?
If you logon to the server as an interactive session can you access the site
using IE?
If so, in IE internet settings is a proxy server configured?
--
Anthony Jones - MVP ASP/ASP.NET
Oct 15 '07 #6
Hi, I tried it on shared hosting web server, and it seems like they
blocked the methods
oWinHTTP.Open "HEAD", rsURL, False
oWinHTTP.Send
also using the same methods on MSXML2.ServerXMLHTTP.3.0. returns the
same error.
On the other hand, when trying it on my private web server - it works!
So THANKS!

Oct 16 '07 #7

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

2 posts views Thread by work4u | last post: by
6 posts views Thread by saqib ali | last post: by
47 posts views Thread by Andy Dingley | last post: by
7 posts views Thread by Hank Reed | last post: by
8 posts views Thread by Joe | last post: by
8 posts views Thread by Steve | last post: by
13 posts views Thread by kolmogolov | last post: by
6 posts views Thread by Neil | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.