首頁 後端開發 php教程 如何開發一個虛擬網域名稱系統_PHP教程

如何開發一個虛擬網域名稱系統_PHP教程

Jul 21, 2016 pm 04:02 PM
使用 網域 如何 開發 系統 虛擬

大家在使用諸如yourname.yeah.net這樣的簡記域名時都感到十分方便,有很多人在想:​​我要是能讓自己的伺服器也能夠實現簡記域名就好了。其實這並不複雜。看完了本文,你也可以做一個簡記域名系統。  

  簡記網域名稱系統的關鍵技術在於:實現Web頁面的重新導向(Redirctory)。在本質上,簡記域名系統和虛擬機器系統完全不同。虛擬機器的虛擬網域和IP是存在一一的對應關係。而簡記域名系統不需要將域名和IP做一一映射。也就是說,它根本不需要複雜的網域解析機制和虛擬機器來完成,它所做的事情就是當你在請求yourname.somedomain時,將你的瀏覽器重新定向到你本來存放Html頁面的地方。  

  為了說明的更完善,下面圖例:  

  我提供的原始程式是運作環境是:RedHat 5.1 Linux下的Apache1.3.6 Web伺服器 PHP3語言。 在編寫程式之前,我們首先要設定好我們的伺服器。首先要讓Apache伺服器支援php3。到ftp.redhat.com下載mod_php-2.0.1-9.i386.rpm,安裝後,修改/etc/httpd/conf/http.conf文件,去掉#LoadModule php3_module一句前面的#註解號,同樣在/etc /httpd/conf/srm.conf檔案裡去掉#AddType application/x-httpd-php3 .php3前面的註解號,同時在DirectoryIndex一項後面加上index.php3。重新啟動Apache Server,此時伺服器就支援標準的php3語言腳本檔案了並且能將index.php3當作預設的首頁。  
  設定DNS伺服器,使其能對泛網域解析。一般的Unix和Linux系統的DNS解析都是由Bind守護程式完成的,Bind4和Bind8的設定檔分別/etc/named.boot和name.conf,設定時會根據你的系統修改。設定Bind的設定檔/etc/named.boot,在其中加入「primary domain.com db.domain」一句,新增一個新的網域記錄。在/etc/name.conf中加入:  

  zone "domain.com" {  
  type master;  
  file "db.domain”;  
  };  
  在/var /name/中新主域記錄檔db.domain,其格式為:  
  N SOA dns.domain.com root.domain.com (  
  199811291 ;Serial 
  199811291 ;Serial 
  199811291 ;Serial 
  200 ; retry  
  604800 ;expire  
  86400) ;minimum  
  dns   『20. 115.135.50  
  www A 202.115.135.50  
  * A 202.115.135.50  
  關鍵是最後一句,即將整個域可能出現未做標記的所有Hostname全部指向同一IP。 執行/usr/sbin/ndc reload,重新載入網域資料庫。測試一下,此時應該隨便ping一個domain域內的主機(除已經標記的),都指向了指定的IP,那麼DNS伺服器設定完成。  


  最後一步是編製PHP3腳本。我們剛才已經在圖中詳細的說明了整個的原理,所以寫一個重新定向的程序就不是很難了。


  讓我們來看一個由IE5.0送來的完整HTTP頭資訊:  


  Accept: application/vnd.ms-ms-d, app vnd.ms-powerpoint,      image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*  
  Accept-Encoding: gzo*  
  Accept-Encoding: gzſ, deflate-commipo Connection: Keep-Alive  
  Host:ww.yahoo.com  
  User-Agent: Mozilla/4.0 (compatible; MSIE 5.0b1; Windows 98)  /4.0 (compatible; MSIE 5.0b1; Windows 98)  

  檢索到用戶註冊的URL資訊後,我們給用戶瀏覽器發送一個重定向命令“Localtion: http://www.jj.jx.cn/somewhere/sample.html”,將使用者重新導向到指定頁面。  


  在PHP3中,有函數GetAllHeader(),取得瀏覽器送出的HTTP頭資訊。我們主要需要使用此函數來完成整個程序。


  後面附有源程序,由於只是實驗性質的,所以在查詢用戶信息時,沒有使用數據庫,如果整個系統要實際應用的話,一定要和數據庫掛接起來,不然查詢用戶資訊的過程將是十分漫長,大大影響效率,而且用戶資料的管理也不方便。 (由於篇幅限制,沒有給予註冊和管理所需的寫記錄程序,請自行添加)  


  在來源程式中,所有使用者資訊記錄在data子目錄下user.dat檔案中。其格式為:  


使用者名稱:  


http://octopus.cit.edu.cn/~qap213/index.html  


















附PHP3源程式:  



  


//取得HTTP的Header $headers = getallheaders();  


🎜(list($header, $value) = every($headers)) {  


🎜>if( header=="Host"){$username= strtok($value,".");}}  



//跳出Banner的視窗//  






'msg=window.open("banner.htm","sample",  





';  







IF(!$usrinfo=file("data/user .dat")){echo "開啟資料檔錯誤!!";}  


$url="http://";  


for($i= 0;$i

if(strtok($usrinfo[$i],":")==$使用者名稱){  

$url=$usrinfo[$i 1];   }  if($url=="http://"){ echo "未找到資料的使用者名稱!";}  else{  
echo '';}  
>   http://www.bkjia.com/PHPjc/316490.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/316490.htmlTechArticle大家都在使用類似yourname.yeah.net這樣的簡記域名時都感到十分方便,有很多人在想:我要是讓自己的伺服器也能夠實現其實簡記網域就好了。 ...
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1317
25
PHP教程
1268
29
C# 教程
1248
24
CUDA之通用矩陣乘法:從入門到熟練! CUDA之通用矩陣乘法:從入門到熟練! Mar 25, 2024 pm 12:30 PM

通用矩陣乘法(GeneralMatrixMultiplication,GEMM)是許多應用程式和演算法中至關重要的一部分,也是評估電腦硬體效能的重要指標之一。透過深入研究和優化GEMM的實現,可以幫助我們更好地理解高效能運算以及軟硬體系統之間的關係。在電腦科學中,對GEMM進行有效的最佳化可以提高運算速度並節省資源,這對於提高電腦系統的整體效能至關重要。深入了解GEMM的工作原理和最佳化方法,有助於我們更好地利用現代計算硬體的潛力,並為各種複雜計算任務提供更有效率的解決方案。透過對GEMM性能的優

华为乾崑 ADS3.0 智驾系统 8 月上市 享界 S9 首发搭载 华为乾崑 ADS3.0 智驾系统 8 月上市 享界 S9 首发搭载 Jul 30, 2024 pm 02:17 PM

7月29日,在AITO问界第四十万台新车下线仪式上,华为常务董事、终端BG董事长、智能汽车解决方案BU董事长余承东出席发表演讲并宣布,问界系列车型将于今年8月迎来华为乾崑ADS3.0版本的上市,并计划在8月至9月间陆续推送升级。8月6日即将发布的享界S9将首发华为ADS3.0智能驾驶系统。华为乾崑ADS3.0版本在激光雷达的辅助下,将大幅提升智驾能力,具备融合端到端的能力,并采用GOD(通用障碍物识别)/PDP(预测决策规控)全新端到端架构,提供车位到车位智驾领航NCA功能,并升级CAS3.0全

BTCC教學:如何在BTCC交易所綁定使用MetaMask錢包? BTCC教學:如何在BTCC交易所綁定使用MetaMask錢包? Apr 26, 2024 am 09:40 AM

MetaMask(中文也叫小狐狸錢包)是一款免費的、廣受好評的加密錢包軟體。目前,BTCC已支援綁定MetaMask錢包,綁定後可使用MetaMask錢包進行快速登錄,儲值、買幣等,且首次綁定還可獲得20USDT體驗金。在BTCCMetaMask錢包教學中,我們將詳細介紹如何註冊和使用MetaMask,以及如何在BTCC綁定並使用小狐狸錢包。 MetaMask錢包是什麼? MetaMask小狐狸錢包擁有超過3,000萬用戶,是當今最受歡迎的加密貨幣錢包之一。它可免費使用,可作為擴充功能安裝在網絡

四款值得推薦的AI輔助程式工具 四款值得推薦的AI輔助程式工具 Apr 22, 2024 pm 05:34 PM

這個AI輔助程式工具在這個AI快速發展的階段,挖掘出了一大批好用的AI輔助程式工具。 AI輔助程式設計工具能夠提升開發效率、提升程式碼品質、降低bug率,是現代軟體開發過程中的重要助手。今天大姚給大家分享4款AI輔助程式工具(而且都支援C#語言),希望對大家有幫助。 https://github.com/YSGStudyHards/DotNetGuide1.GitHubCopilotGitHubCopilot是一款AI編碼助手,可幫助你更快、更省力地編寫程式碼,從而將更多精力集中在問題解決和協作上。 Git

網易信箱大師怎麼用 網易信箱大師怎麼用 Mar 27, 2024 pm 05:32 PM

網易郵箱,作為中國網友廣泛使用的一種電子郵箱,一直以來以其穩定、高效的服務贏得了用戶的信賴。而網易信箱大師,則是專為手機使用者打造的信箱軟體,它大大簡化了郵件的收發流程,讓我們的郵件處理變得更加便利。那麼網易信箱大師該如何使用,具體又有哪些功能呢,下文中本站小編將為大家帶來詳細的內容介紹,希望能幫助到大家!首先,您可以在手機應用程式商店搜尋並下載網易信箱大師應用程式。在應用寶或百度手機助手中搜尋“網易郵箱大師”,然後按照提示進行安裝即可。下載安裝完成後,我們打開網易郵箱帳號並進行登錄,登入介面如下圖所示

百度網盤app怎麼用 百度網盤app怎麼用 Mar 27, 2024 pm 06:46 PM

在如今雲端儲存已成為我們日常生活和工作中不可或缺的一部分。百度網盤作為國內領先的雲端儲存服務之一,憑藉其強大的儲存功能、高效的傳輸速度以及便捷的操作體驗,贏得了廣大用戶的青睞。而且無論你是想要備份重要文件、分享資料,還是在線上觀看影片、聽取音樂,百度網盤都能滿足你的需求。但很多用戶可能對百度網盤app的具體使用方法還不了解,那麼這篇教學就將為大家詳細介紹百度網盤app如何使用,還有疑惑的用戶們就快來跟著本文詳細了解一下吧!百度雲網盤怎麼用:一、安裝首先,下載並安裝百度雲軟體時,請選擇自訂安裝選

常用常新!華為Mate60系列升級HarmonyOS 4.2:AI雲端增強、小藝方言太好用了 常用常新!華為Mate60系列升級HarmonyOS 4.2:AI雲端增強、小藝方言太好用了 Jun 02, 2024 pm 02:58 PM

4月11日,華為官方首次宣布HarmonyOS4.2百機升級計劃,此次共有180餘款設備參與升級,品類覆蓋手機、平板、手錶、耳機、智慧螢幕等設備。過去一個月,隨著HarmonyOS4.2百機升級計畫的穩定推進,包括華為Pocket2、華為MateX5系列、nova12系列、華為Pura系列等多款熱門機型也已紛紛展開升級適配,這意味著會有更多華為機型用戶享受到HarmonyOS帶來的常用常新體驗。從使用者回饋來看,華為Mate60系列機種在升級HarmonyOS4.2之後,體驗全方位躍升。尤其是華為M

AI程式設計師哪家強?探索Devin、通靈靈碼和SWE-agent的潛力 AI程式設計師哪家強?探索Devin、通靈靈碼和SWE-agent的潛力 Apr 07, 2024 am 09:10 AM

2022年3月3日,距離世界首個AI程式設計師Devin誕生不足一個月,普林斯頓大學的NLP團隊開發了一個開源AI程式設計師SWE-agent。它利用GPT-4模型在GitHub儲存庫中自動解決問題。 SWE-agent在SWE-bench測試集上的表現與Devin相似,平均耗時93秒,解決了12.29%的問題。 SWE-agent透過與專用終端交互,可以開啟、搜尋文件內容,使用自動語法檢查、編輯特定行,以及編寫和執行測試。 (註:以上內容為原始內容微調,但保留了原文中的關鍵訊息,未超過指定字數限制。)SWE-A

See all articles