How to PHP server-side check if a url of a web site is valid?
I've searched our SO questions but found solutions are based on calling ping
command executed from using system
PHP function.
My web host server doesn't allow me to do that. What should I do?
Please help, Nam.
Update
I need to check f开发者_运维知识库rom the server side
.
If by a valid URL you mean one which does not 404, then you could use get_headers()
and look for 404
in the first returned array element.
$url = 'http://google.com';
list($status) = get_headers($url);
if (strpos($status, '404') !== FALSE) {
// URL is 404ing
}
Alternatively, you could look for 200
which would be a normal happy request :)
try this:
//checking if the site exists by fopen, instead of file_get_contents to speed it up
$url = "URL"; //your url goes in this place instead of nabtron.com
if (@fopen($url,"r")) {
echo "<b>".$url."</b> is accessible<br />";
}
精彩评论