如何檢查訪問該頁面的URL是否是原始URL或者它是否是CNAME記錄。如何檢查域名是否是PHP中的CNAME
例如,我有一個網站domain.com
。用戶可以設置一個CNAME,他們將www.otherdomain.com
鏈接到我們的網站domain.com
。
從我們的服務器角度來看,如何檢測訪問該頁面的網址是實際的網址(domain.com
)還是CNAME網址(www.otherdomain.com
)?
如何檢查訪問該頁面的URL是否是原始URL或者它是否是CNAME記錄。如何檢查域名是否是PHP中的CNAME
例如,我有一個網站domain.com
。用戶可以設置一個CNAME,他們將www.otherdomain.com
鏈接到我們的網站domain.com
。
從我們的服務器角度來看,如何檢測訪問該頁面的網址是實際的網址(domain.com
)還是CNAME網址(www.otherdomain.com
)?
我認爲你必須查詢DNS才能知道它,因爲這些信息通常不會在請求標題中出現。
查看PHP文檔中的dns_get_record和checkdnsrr函數。
dns_get_record是正確的答案。我得到它的工作。謝謝。 – Pinkie
您可以使用PHPDNS類庫來找出哪種DNS記錄是給定的url。
$answer->results[x]->typeid //Textual record type ID (A, MX, CNAME etc)
如果你正在檢查網址,你可以在PHP中使用$_SERVER['HTTP_HOST']
。這是來自URL的請求主機(例如,http://otherdomain.com/blah.php將使服務器變爲otherdomain.com
)。 $_SERVER['SERVER_NAME']
是httpd.conf中配置的servername。
如果HTTP_HOST!= SERVER_NAME,那麼遠程用戶幾乎肯定會使用某種別名來訪問該站點。
HTTP_HOST和HTTP_NAME都給我otherdomain.com – Pinkie
這種想法是否需要專用IP? – JBithell