ホームページ バックエンド開発 PHPチュートリアル ドメイン名エラー修正システム 仮想ドメイン名システムの開発方法

ドメイン名エラー修正システム 仮想ドメイン名システムの開発方法

Jul 29, 2016 am 08:34 AM
ドメイン名修正システム

yourname.yeah.net などの短縮ドメイン名を使用すると、誰もが非常に便利だと感じます。自分のサーバーで短縮ドメイン名を実装できればと考えている人は多いでしょう。実際には複雑ではありません。この記事を読んだ後は、短縮ドメイン ネーム システムを作成することもできます。
短縮ドメイン名システムの主要なテクノロジーは、Web ページのリダイレクト (リディレクトリ) を実現することです。本質的に、短縮ドメイン名システムと仮想マシン システムはまったく異なります。仮想ドメイン名と仮想マシンの IP の間には 1 対 1 の対応関係があります。短縮ドメイン名システムでは、ドメイン名と IP を 1 対 1 でマッピングする必要はありません。つまり、複雑なドメイン名解決メカニズムや仮想マシンを必要とせず、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 サーバーを再起動します。この時点で、サーバーは標準の php3 言語スクリプト ファイルをサポートし、index.php3 をデフォルトのホームページとして使用できます。
汎ドメイン名を解決できるように DNS サーバーを設定します。一般的な Unix および Linux システムの DNS 解決は、Bind4 および Bind8 の設定ファイルはそれぞれ /etc/named.boot および name.conf であり、設定中にシステムに応じて変更します。バインド設定ファイル /etc/named.boot を設定し、「primary domain.com db.domain」という文を追加し、新しいドメイン レコードを追加します。 /etc/name.conf に追加します:
ゾーン "domain.com" { type master;
file "db.domain" };
/var/name/ に新しいマスター ドメイン レコード ファイル db.domain を作成します。形式は次のとおりです: N SOA dns.domain.com root.domain.com (
199811291 ; Serial
28800 ; リフレッシュ
7200 ; 再試行
604800 ; 期限切れ
86400) ; 最小
dns
MX 10 dns.domain.com。
DNS A 202.115.135.50
www A 202.115.135.50
* A 202.115.135.50
キーは最後の文、つまり、ドメイン全体のマークされていないすべてのホスト名が同じIPを指す可能性があります。 /usr/sbin/ndc reload を実行して、ドメイン名データベースを再ロードします。この時点で、ドメイン内の任意のホスト (マークされているホストを除く) に ping を実行し、すべてが指定された IP をポイントするようにする必要があります。これで、DNS サーバーの設定が完了します。
最後のステップは、PHP3 スクリプトをコンパイルすることです。全体の原理を図で詳しく説明したので、リダイレクト プログラムを書くのは難しくありません。
IE5.0によって送信される完全なHTTPヘッダー情報を見てみましょう:
Accept: application/vnd.ms-excel, application/msword, application/vnd.ms-powerpoint, image/gif, image/x-xbitmap 、image/jpeg、image/pjpeg、*/*
Accept-Encoding: gzip、deflate
Accept-Language: zh-cn
接続: Keep-Alive
ホスト: ww.yahoo.com
ユーザー エージェント: Mozilla/4.0 (互換; MSIE 5.0b1; Windows 98)
HTTPヘッダー情報全体からホスト情報を取り出し、http://www.jj.jx.cn/www.xxxという形式の最初の部分を変更する必要があります。 .xxx/default.htm 「www」、つまりHostName(つまりユーザーが登録した名前)を別途取り出して、リダイレクト検索のキーワードとして使用します。
ユーザーが登録したURL情報を取得した後、リダイレクトコマンド「Localtion: http://www.jj.jx.cn/somewhere/sample.html」をユーザーのブラウザに送信し、指定されたページにユーザーをリダイレクトします。
PHP3にはブラウザから送信されたHTTPヘッダー情報を取得する関数GetAllHeader()があります。主にこの関数を使用してプログラム全体を完成させる必要があります。
ソースプログラムは最後に添付されていますが、あくまで実験的なものなので、システム全体を実用化する場合はデータベースに接続する必要があります。ユーザー情報を照会するプロセスは非常に長くなり、効率に大きく影響し、ユーザーデータの管理が不便になります。 (容量の都合上、登録・管理に必要な書き込み・記録手順は記載しておりません。ご自身で追加してください。)
ソースプログラムでは、すべてのユーザー情報がdataサブディレクトリのuser.datファイルに記録されます。その形式は:
ユーザー名:
http://octopus.cdit.edu.cn/~qap213/index.html
附PHP3源程序:
//HTTPのヘッダを取得して解析する//
$headers = getallheaders();  
while (list($header, $value) = each($headers)) {
if($header=="Host"){$username= strtok($value,".");}}
//ジャンプバナーのウィンドウから出る//
echo '';

// 記録されたファイルからユーザー情報を取得します//
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 "データの uesrname が見つかりません!";}
else{
echo '
?>  

以上は、ドメイン名セキュリティ システムに関する内容を含む、ドメイン名セキュリティ システムがどのように公開されるかを説明しました。PHP 教則に関心のある友人の助けになることが望ましいです。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Laravelでフラッシュセッションデータを使用します Laravelでフラッシュセッションデータを使用します Mar 12, 2025 pm 05:08 PM

Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

LaravelのバックエンドでReactアプリを構築する:パート2、React LaravelのバックエンドでReactアプリを構築する:パート2、React Mar 04, 2025 am 09:33 AM

これは、LaravelバックエンドとのReactアプリケーションの構築に関するシリーズの2番目と最終部分です。シリーズの最初の部分では、基本的な製品上場アプリケーションのためにLaravelを使用してRESTFUL APIを作成しました。このチュートリアルでは、開発者になります

PHPのカール:REST APIでPHPカール拡張機能を使用する方法 PHPのカール:REST APIでPHPカール拡張機能を使用する方法 Mar 14, 2025 am 11:42 AM

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

Laravelテストでの簡略化されたHTTP応答のモッキング Laravelテストでの簡略化されたHTTP応答のモッキング Mar 12, 2025 pm 05:09 PM

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

Codecanyonで12の最高のPHPチャットスクリプト Codecanyonで12の最高のPHPチャットスクリプト Mar 13, 2025 pm 12:08 PM

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

Laravelの通知 Laravelの通知 Mar 04, 2025 am 09:22 AM

この記事では、Laravel Webフレームワークの通知システムを検討します。 Laravelの通知システムを使用すると、さまざまなチャネルでユーザーに通知を送信できます。今日は、通知ovを送信する方法について説明します

PHPにおける後期静的結合の概念を説明します。 PHPにおける後期静的結合の概念を説明します。 Mar 21, 2025 pm 01:33 PM

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

PHPロギング:PHPログ分析のベストプラクティス PHPロギング:PHPログ分析のベストプラクティス Mar 10, 2025 pm 02:32 PM

PHPロギングは、Webアプリケーションの監視とデバッグ、および重要なイベント、エラー、ランタイムの動作をキャプチャするために不可欠です。システムのパフォーマンスに関する貴重な洞察を提供し、問題の特定に役立ち、より速いトラブルシューティングをサポートします

See all articles