本文目錄一覽:
- 1、如何通過PHP實現域名跳轉
- 2、php獲取本機主板網卡IP地址.跳轉讀取相應的數據
- 3、PHP根據Ip跳轉
- 4、php中如何實現網址的跳轉
- 5、PHP 語法 怎麼將MAC地址轉化成IP地址呢
- 6、php判斷IP跳轉頁面
如何通過PHP實現域名跳轉
域名跳轉也就是平常所說的網站301重定向,由原來網站指向A地址的,但你想輸入網址後,轉到B地址上,這就是域名跳轉,也稱為Url轉發,一般適用於在多個域名綁定同一個建站CMS的根目錄的時候,在做搜索引擎排名的時候和避免讓用戶記住多個域名的情況下應用。
域名的跳轉分為幾種情況。有301跳轉(301是永久重定向),也有302臨時域名轉移。一般我們做跳轉的時候都是選擇做301跳轉。因為就優化角度來說,302不適用於網站優化。
進行301跳轉的話有三種方法。
第一種:web服務器做301跳轉。
這種情況適用於獨立服務器或者VPS使用。設置方法(以IIS6.0服務器為例):
遠程連接到你的服務器。然後打開IIS,在網站那裡,右鍵-屬性-網站-IP地址那裡點編輯增加一個站點,增加一個站點,綁定的一下主機頭,也可以綁定多個閑置域名。
打開IIS,首先新建立一個站點,隨便對應一個目錄。這個目錄下可以為空。在欲重定向的網頁或目錄上按右鍵;選中“重定向到URL”;在對話框中輸入目標頁面的地址;切記,記得選
中“資源的永久重定向”;當然,最後要點擊“應用”,完成。
其他Apache服務器進行跳轉的話,可以進行第二種情況。
第二種:代碼做301跳轉。
這種情況比較常用的。也是最為廣泛快捷的,就是在你需要跳轉的網站根目錄代碼裡面加上跳轉的代碼,跳轉到你的目標網站。
每個CMS的301跳轉代碼設置方法都不一樣,具體可以根據你網站所使用的CMS到網上搜索相應的代碼加入到相應的位置即可。有的是加在index.php/index.htm等文件,有的是直接添加在偽靜態文件,這個需要自行判斷。
第三種:直接在域名做301跳轉。
1、首先解析主域名,主機記錄為@,記錄類型為CNAME
2、接着解析帶www的域名,添加記錄,記錄類型為CNAME
3、記錄值依舊選擇服務器的IP地址
4、完成後需要等待域名解釋的DNS緩存才可以生效,生效後輸入主域名將直接跳轉到帶www的域名。
一般在做跳轉的時候,我們都是推薦使用前面兩種方法進行做域名的跳轉,尤其第一種辦法,最簡單快捷。而且可以立馬生效。
php獲取本機主板網卡IP地址.跳轉讀取相應的數據
大家一般都是用$_SERVER[‘REMOTE_ADDR’]來獲取用戶IP,
但是如果使用了反向代理的,HTTP頭中REMOTE_ADDR就不是用戶的地址,反而是上一級代理的地址了。
經過我的研究有兩種方法來獲取用戶的真實外網IP。
方法一:curl
複製代碼代碼如下:
function get_onlineip() {
$ch = curl_init(”);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$a = curl_exec($ch);
preg_match(‘/\[(.*)\]/’, $a, $ip);
return $ip[1];
}
方法二:$_SERVER[‘HTTP_X_FORWARDED_FOR’]來獲取相應的地址
複製代碼代碼如下:
function get_onlineip() {
$onlineip = ”;
if(getenv(‘HTTP_CLIENT_IP’) strcasecmp(getenv(‘HTTP_CLIENT_IP’), ‘unknown’)) {
$onlineip = getenv(‘HTTP_CLIENT_IP’);
} elseif(getenv(‘HTTP_X_FORWARDED_FOR’) strcasecmp(getenv(‘HTTP_X_FORWARDED_FOR’), ‘unknown’)) {
$onlineip = getenv(‘HTTP_X_FORWARDED_FOR’);
} elseif(getenv(‘REMOTE_ADDR’) strcasecmp(getenv(‘REMOTE_ADDR’), ‘unknown’)) {
$onlineip = getenv(‘REMOTE_ADDR’);
} elseif(isset($_SERVER[‘REMOTE_ADDR’]) $_SERVER[‘REMOTE_ADDR’] strcasecmp($_SERVER[‘REMOTE_ADDR’], ‘unknown’)) {
$onlineip = $_SERVER[‘REMOTE_ADDR’];
}
return $onlineip;
}
PHP根據Ip跳轉
在最後加個判斷就可以了吧!
比如:
if (in_array($cip,$lip)){
echo “script language=’javascript’ type=’text/javascript’window.location.href=’$jump_domain’/script”;
}
php中如何實現網址的跳轉
php跳轉方式有兩種常用:
PHP頁面跳轉一、header()函數
header()函數是PHP中進行頁面跳轉的一種十分簡單的方法。header()函數的主要功能是將HTTP協議標頭(header)輸出到瀏覽器。
header()函數的定義如下:
void header (string string [,bool replace [,int http_response_code]])
可選參數replace指明是替換前一條類似標頭還是添加一條相同類型的標頭,默認為替換。
第二個可選參數http_response_code強制將HTTP相應代碼設為指定值。 header函數中Location類型的標頭是一種特殊的header調用,常用來實現頁面跳轉。注意:1.location和“:”號間不能有空格,否則不會跳轉。
2.在用header前不能有任何的輸出。
3.header後的PHP代碼還會被執行。
PHP頁面跳轉二、Meta標籤
Meta標籤是HTML中負責提供文檔元信息的標籤,在PHP程序中使用該標籤,也可以實現頁面跳轉。 若定義http-equiv為refresh,則打開該頁面時將根據content規定的值在一定時間內跳轉到相應頁面。
若設置content=”秒數;url=網址”,則定義了經過多長時間後頁面跳轉到指定的網址。例如,使用meta標籤實現疫苗後頁面自動跳轉到LAMP兄弟連官方論壇。
PHP 語法 怎麼將MAC地址轉化成IP地址呢
?php
$a=”IP:”;
$b=”進入時間:”;
$user_IP = ($_SERVER[“HTTP_VIA”]) ? $_SERVER[“HTTP_X_FORWARDED_FOR”] : $_SERVER[“REMOTE_ADDR”];
$user_IP = ($user_IP) ? $user_IP : $_SERVER[“REMOTE_ADDR”];
$showtime=date(“Y-m-d H:i:s”);
echo “$a $user_IP”;
echo “$b $showtime”;
?
php判斷IP跳轉頁面
?php
//第一步:透過代理獲取用戶真實的IP地址
$theip=getip();
function getIP()
{
static $realip;
if (isset($_SERVER)){
if (isset($_SERVER[“HTTP_X_FORWARDED_FOR”])){
$realip = $_SERVER[“HTTP_X_FORWARDED_FOR”];
} else if (isset($_SERVER[“HTTP_CLIENT_IP”])) {
$realip = $_SERVER[“HTTP_CLIENT_IP”];
} else {
$realip = $_SERVER[“REMOTE_ADDR”];
}
} else {
if (getenv(“HTTP_X_FORWARDED_FOR”)){
$realip = getenv(“HTTP_X_FORWARDED_FOR”);
} else if (getenv(“HTTP_CLIENT_IP”)) {
$realip = getenv(“HTTP_CLIENT_IP”);
} else {
$realip = getenv(“REMOTE_ADDR”);
}
}
return $realip;
}
//第二步:通過讀取IP地址庫,找到所屬地區
//假設表名為ip,字段有begin(起始),end(結束),area(地區代號)
$dblink=@mysql_connect(“數據庫服務器名”,”數據庫用戶名”,”數據庫密碼”);
$dbselect=@mysql_select_db(數據庫名);
if (!$dbselect){
die(“數據庫無法讀取”);
}
$result=mysql_query(“select * from `ip` where `begin`=`$theip` and `end`=`$theip`”);
$num=mysql_num_rows($result);
if($num0){
$info=mysql_fetch_array($result);
$page=$info[‘area’];
else{
$page=’default’; //如果IP不在數據庫中,則用缺省的頁面
}
//第三步:轉到相關頁面,如代號為”js”,轉到”js.php”頁面
$page.=’.html’; //後綴你可以自己取
echo “script language=\”javascript\”window.location.replace(\”$page\”)/script”;
?
原創文章,作者:GPZZS,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/313479.html