1. php怎麼編寫生成二級域名我做的都是生成的這樣的.com/index.phpid=8
首先 DNS 要支持泛解析, 例如 *.domain.com 這樣的解析
接下來就是寫重寫規則了, 把 111.domain.com 這樣的域名 重寫成 domain.com/index.php?id=8
重寫規則 要根據你的應用來進行寫的
2. php 怎麼截取二級域名
如何截取一個URL中的主域名。
<?php
$S = 'http://www1.unue.cn';
$S = parse_url($S);
$S = strtolower($S['host']) ; //取域名部分
//echo $S;
$domain = array('com','cn','name','org','net'); //域名後綴 有新的就擴展這吧
$SS = $S;
$dd = implode('|',$domain);
$SS = preg_replace('/(\.('.$dd.'))*\.('.$dd.')$/iU','',$SS); 把後面的域名後綴部分去掉
$SS = explode('.',$SS);
$SS = array_pop($SS); //取最後的主域名
$SS = substr($S,strrpos($S,$SS)); //加上後綴拼成完成的主域名
echo $SS;
?>
代碼
<?
function PMA_getenv($var_name) {
if (isset($_SERVER[$var_name])) {
return $_SERVER[$var_name];
} elseif (isset($_ENV[$var_name])) {
return $_ENV[$var_name];
} elseif (getenv($var_name)) {
return getenv($var_name);
} elseif (function_exists('apache_getenv')
&& apache_getenv($var_name, true)) {
return apache_getenv($var_name, true);
}
return '';
}
if (empty($HTTP_HOST)) {
if (PMA_getenv('HTTP_HOST')) {
$HTTP_HOST = PMA_getenv('HTTP_HOST');
} else {
$HTTP_HOST = '';
}
}
echo htmlspecialchars($HTTP_HOST);
?>
3. thinkphp5配置二級域名
最近有一個項目要將移動端和PC端分離開來,比如訪問xxx.com,展示的是PC端的頁面。而訪問m.xxx.com,展示的是移動端的頁面。
在thinkphp5中可以這樣操作:
首先,在applicationconfig.php修改url_domain_deploy為true,如圖:
其次,在application
oute.php注冊域名部署規則。
其中m是子域名,而mobile是模塊名.這段表示任何以m為子域名的訪問,都會被解析到mobile模塊。
如果是在本地配置,要在hosts中添加
另外:
在apache或nginx中要配置兩個虛擬主機,一個域名為xxx.com,另一個域名為m.xxx.com。根目錄都指向public文件夾,但兩個的埠號不能相同。
參考: https://www.kancloud.cn/manual/thinkphp5/118039
4. 求助啊!伺服器上從做了一個二級域名泛解析的php站點後,其它php網站打不開了
很明顯伺服器擴展問題,想問您的是php多少版本的,php5.1及以上是向下兼容的,若是5.0及已下就需要4.0的擴展了,這邊建議您聯系下您的空間商技術人員為您看下php擴展問題!
5. PHP如何獲取目標域名的全部二級域名
我講下思路,首先是你的PHP不可能單獨在伺服器上計算出來二級域名,所以你必須要有一個目標whois信息查詢的網站作為數據源;然後信息的獲取就需要你根據目標網站做處理了,如果有API的最好,可以直接查詢;如果沒有API,就只能通過PHP小偷來獲取目標網站的查詢結果,然後對查詢結果進行字元串正則匹配替換等處理,來得到最後的結果。
好 了,給分吧!