ホームページ バックエンド開発 PHPチュートリアル PHP を使用して 404 エラー ページを書き換え、ページをよりユーザーフレンドリーにする_PHP チュートリアル

PHP を使用して 404 エラー ページを書き換え、ページをよりユーザーフレンドリーにする_PHP チュートリアル

Jul 21, 2016 pm 03:13 PM
404 php u フレンドリー リライト 使用 知る 欲しい アクセス 間違い ページ

404 エラーについては、アクセスする URL が存在しない場合、このページが読み取られて表示されることを多くの人が知っています。以前は、404 に対処するための通常のアプローチは、単純に数行のテキストを記述することでした。これも少し読んでください。便宜を図りたい少数の人々は、遅延リダイレクトを行うためにメタ タグを使用することさえあります。これは、実際には、これに焦点を当てています。今日お話しすること

まず最初に、私の 404 が私に何ができるかを説明させてください: 1. どこからのユーザーが私の URL にアクセスしようとしてその結果が失敗したかを教えてくれます。
2.相手がこの URL にアクセスしたい理由を教えてくれて、ウェブサイトの最適化を手伝ってくれます
3.相手の IP アドレスを教えてくれます
4.相手の意図を教えてくれます
5.彼は私に言いたくないことを黙ってもらうことができます
6. 彼は私に言いたいことをメールで送ってくれる
7. 彼は私が 301 の永久リダイレクトをするのを手伝ってくれます
8.誰かが私の Web サイトまたはホストに侵入しようとしていると教えてください


非常に謎に聞こえます。それも非常にクールです。わかりました。それぞれを分析してみましょう : 1. PHP を使用してユーザーのソース URL をキャプチャできます。
2. ソース URL があるので、私のウェブサイト http:// のように、ユーザーの意図を直感的に推測できます。 www.jb51.net の場合、このユーザーのソース URL は http://www.jb51.net で、現在の URL は http://www.jb51.net/user.php?id=1 です。これは、この人が私のサイトを閲覧していることを意味します。Web サイト上の人のプロフィール ページをクリックすると、その人の情報が見つからず、エラーが発生します。これは、ID=1 の製品が存在しない可能性があり、削除されている可能性があることを意味します。この URL へのハイパーリンクがある場合は、それを削除する方法を見つける必要があります。
3. この関数は、PHP を使用するだけで簡単です。相手のIPアドレスを物理アドレスに変換する機能は非常に優れており、非常に強力です。なぜなら、私のWebサイトwww.7di.netは、私自身なので、セキュリティ面は自分で処理する必要があり、多くの場合、悪意のある人は他の人のサーバーに興味を持ち、さまざまな方法でサーバーに侵入しようとします。短期間に多数の 404 エラーが発生し、ソース URL が空の場合、アクセスしようとしている URL はすべて非常に機密性の高い URL です。現時点で必要なのは、ファイアウォール設定を開いて、その URL をブロックすることだけです。最近この方法を使っていくつかの IP アドレスをブロックしました。情報産業省の IP も私によってブロックされたことを忘れていましたが、なぜですか。本当ですか~~!
5. 正直に言うと、このプラグインは始まったばかりで、彼のおかげで毎日何百ものメールが届くのがとても気になりました。ユーザーによる通常の閲覧、コンテンツを収集するさまざまな検索エンジンによって引き起こされるものもあれば、侵入によって引き起こされるものもあります。とにかく、私は多くのトラブルを経験しました。条件を満たしたすべての拡張子、または条件を満たした IP を追加することで、メールを送信する必要がなくなります。もちろん、sendmail をインストールしたり、サードパーティを使用するメール クラスを開発したりするなど、他の方法を使用することもできます。問題がなければ、smtp 経由で送信できます (具体的な詳細は今日の説明の範囲外です)。
7. このページにアクセスできるということは、ユーザーがアクセスした URL が存在しないことを意味します。ユーザーを正しい URL にアクセスするように誘導する必要があるため、ユーザーを正しい URL にアクセスするように誘導するのであれば、メタ タグまたは JS 遅延を使用するだけで十分であると言えるでしょう。 301 リダイレクトの問題は、検索エンジンに不正行為だと思われたくないからです。
8. これについてはすでに説明しました。さらに、自分の Web サイト上のどの URL が他の Web サイトからバックリンクされているかを一般的に理解する必要があります (経験上、これは一夜にして達成できるものではありません)。投稿は終了しました。次の良いショーが上演されます。次のコードを 404 .php として保存し、Apache または nginx を使用して 404 エラー ページをここに指定します



コードをコピーします

コードは次のとおりです。以下に続きます:


#URL を設定します。末尾にアンダースコアがないことに注意してください/
$MyURL = (isSet($_SERVER['HTTP_HOST'])) Str_iReplace('http://','',StrToLower() rTrim( $_SERVER['HTTP_HOST'],'/'))) : 'www.7di.net';
#Set URL、末尾にアンダースコアがないことに注意してください/
$MyDomain = (isSet($_SERVER['HTTP_HOST' ])) ? 'http://'.Str_iReplace('http://','',StrToLower(rTrim($_SERVER['HTTP_HOST'],'/'))) : 'http://www.jb51 .net' ;
//主に 8 時間の時差を修正するために使用されます
//出力ヘッダー
Header('Content-type:text/html) ; charset=utf-8 ');
/**
メールを送信する
パラメータ:
受信者、メールのタイトル (改行なし)、メールの内容 (行は n で区切る必要があり、各行は 70 文字を超えることはできません)
説明:
PHP 組み込み関数を呼び出すMail はメールを送信します
戻り値:
ブール値を返します
使用法:
$IsSend=Fun::Mail2($email,$tit,$msg);*/
関数 Mail2($to,$tit,$msg) {
IF(Filter_var($to,FILTER_VALIDATE_EMAIL)==''){
throw new Exception('メールアドレスエラー!');
$tit='=?UTF-8?B?'.Base64_Encode($tit).'?=';
$msg = str_replace("n.", "n..", $msg); //Windows が行の先頭にピリオドを見つけた場合、そのピリオドは削除されます。この問題を回避するには、1 つのピリオドを 2 つのピリオドに置き換えます
Return Mail($to,$tit) ,$msg,'From:see7di@ gmail.com'."n".'Content-Type:text/html;charset=utf-8');
}
$msg='< ;/tr>
';
$msg .=(isSet($_SERVER['REMOTE_ADDR'])) ? "訪問者 IP は次のとおりです:
{$_SERVER['REMOTE_ADDR']}< br>" : '';
$msg.="訪問時間:
".date('Y-m-d H:i:s',time()).'< br>
';
$msg.=(isSet($_SERVER['REMOTE_HOST'])) "{$_SERVER['REMOTE_HOST']}

" : '
';
$msg.=(isSet( $_SERVER['HTTP_USER_AGENT'])) "訪問者の詳細:
{$_SERVER['HTTP_USER_AGENT']}
br>" : '' ;
$msg.=(isSet($_SERVER['REQUEST_URI'])) ? "アクセスしたいページは次のとおりです:
{$MyDomain }{$_SERVER['REQUEST_URI' ]}

" : '';
$msg.=(isSet($_SERVER['HTTP_REFERER']) および Trim($_SERVER['HTTP_REFERER']) !='') "送信元アドレスは:
{$_SERVER['HTTP_REFERER']}

"; .='
';
//これらがブロックされていないと、死ぬほどイライラします
$arr=Array( 'mp3','rm','swf', 'jpg','gif');
//メールを送信しない IP は、基本的に検索エンジンのスパイダーです
$arrIP=Array('66.249.77.217',' 66.249.74.67');
//拡張子
$needEx=Explode('.',StrToLower(Trim($_SERVER['REQUEST_URI']))); にアクセスします。 (!In_Array($needEx,$arr) And !In_Array(Trim($_SERVER['REMOTE_ADDR']),$arrIP)) {
Mail2('see7di@gmail.com','404 エラー ['.$MyURL .']!',$msg) ;
}
unSet($MyURL,$msg,$needEx,$arr);
Header('HTTP/1.1 301 が永久に移動されました'); }");
Die();


注: 上記のコードに実装されている機能があなたの要望を満たせないと思われる場合は、コードを書き直し、改善し、強化することをお勧めします。私は決して反対しません。でも、あなたの作品を私にシェアしてください、ありがとう~~~~!



http://www.bkjia.com/PHPjc/326532.html
www.bkjia.com
tru​​e

http://www.bkjia.com/PHPjc/326532.html技術記事 404 エラーについては、アクセスする URL が存在しない場合、このページが読み取られて表示されることを多くの人が知っています。これまで、404 に対処するための通常のアプローチは、単純に数行のテキストを記述することでした。興味があります...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

CakePHP のロギング CakePHP のロギング Sep 10, 2024 pm 05:26 PM

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP サービス CakePHP サービス Sep 10, 2024 pm 05:26 PM

この章では、CakePHP で利用できる認証プロセスに関する情報を扱います。

See all articles