How to check if a domain name is a CNAME in PHP

前端 未结 3 805
耶瑟儿~
耶瑟儿~ 2021-02-10 04:21

How do I check if the URL accessing the page is the original URL or if it\'s a CNAME record.

For example, I have a site domain.com. Users can setup a CNAME

相关标签:
3条回答
  • 2021-02-10 04:47

    If you're checking on URLs, you can use $_SERVER['HTTP_HOST'] in PHP. That's the requested host from the URL (eg. http://otherdomain.com/blah.php would make the server var be otherdomain.com). $_SERVER['SERVER_NAME'] is the configured servername in the httpd.conf.

    If HTTP_HOST != SERVER_NAME, the remote user is almost certainly using an alias of some sort to access the site.

    0 讨论(0)
  • 2021-02-10 04:49

    You can use PHPDNS class library to find out what kind of DNS record is a given url.

    $answer->results[x]->typeid //Textual record type ID (A, MX, CNAME etc)
    
    0 讨论(0)
  • 2021-02-10 04:58

    I think you have to query a DNS to know it, since this information does not usually come in request headers.

    Take a look at the dns_get_record and checkdnsrr functions in PHP documentation.

    0 讨论(0)
提交回复
热议问题