(転送)URL書き換えによる静的リンク(PHP)
(移管) URL Rewrite によるリンク静的化の実装 (PHP)
検索エンジンは静的ページに非常に友好的であることがわかっているため、多くの Web サイトはクローラーが自身の Web サイトのコンテンツをクロールしやすくするために静的ページを生成します。ただし、非常に大規模なデータ変更を伴うフォーラム/ポストバー システムなど、一部のアプリケーションは、すべての静的リンクに適していない場合があります。現時点では、URL の書き換えによって疑似静的リンクを実現できます。つまり、Web サイトは外部的に静的リンクを使用します。内部的には、実際、動的ページの URL 形式は今でも使用されています。たとえば、次のようなリンク: http://www.ci123.com/abc.php?action=a&id=1 は、http://www.ci123.com/abc/a/ の形式に書き換えることができます。 1.html。これは、検索エンジン最適化の最も重要な側面の 1 つであり、Web サイト システムの内部リンクが将来変更された場合でも、元のリライト ルールを変更することでページに永久リンクを付与できるという追加の利点もあります。外部 URL の効率性が維持されることが保証されます。
以下では、Apache+PHP で URL 書き換えを実装するための 2 つの簡単な方法を紹介します。1 つ目はサーバー構成権限を持つユーザーに適しており、2 つ目はスペースをレンタルするユーザーにも適しています。最近の仕上げの学習体験。
1. サーバー構成権限を持つユーザーの場合は、Apache の mod_rewrite モジュールを使用することをお勧めします。mod_rewrite モジュールがインストールされていることが前提となります。 Apache 構成ファイルを開き、対応するホストのセクションを見つけて、次のコードを追加します:
RewriteEngine On
RewriteRule ^/abc/([a-z]+)/([0-9]+).html $/abc.php?action=$1&id=$2 [L] 次に、シェルでサービス httpdreload を実行し、Apache に設定をリロードさせます。これで、PHP ページに abc/a/1.html の形式でリンクを記述することができます。Apache がこの URL を解析すると、この URL が abc.php?action=a&id=1 の形式に書き換えられ、正しいページが返されます。 。正規表現を使用すると、ほぼすべてのリンク形式を実現できます。これは非常に強力なアプリケーションです。
2. スペースをレンタルしているユーザーの場合、通常、Apache の構成を変更する方法はありません。原則として、PHP ページにアクセスするためにパラメーターを渡す必要があります。通常の状況では、グローバル変数 $_GET は自動的に取得されます。たとえば、上記のリンクは、ページ内の $_GET['action'] および $_GET['id'] を通じて取得できます。 URLを書き換えています。各ページに url_rewrite.php ファイルが必要になります。内部のコードは次のとおりです:
$filename =basename($_SERVER['SCRIPT_NAME']);
if (strto lower($filename) ) == "abc.php") {
if (!empty($_GET[id])) {
$id = intval($_GET[id]);
$action = intval($ _GET [アクション]);
}
else {
$nav = $_SERVER["REQUEST_URI"];
$script = $_SERVER["SCRIPT_NAME"];
$nav = ereg_replace ( "^$script", "", urldecode($nav));
$vars =explode("/", $nav);
$action = intval($vars[1]);
$id = intval($vars[2]);
}
}
このようにして、ページ内のリンクもabcの形式で書くことができます。 .php/a/1 をクリックして、対応するページにアクセスします。
この方法は最初の方法よりも効率が低いことに注意してください。最初の方法は WEB サーバーの URL 解析プロセス中に実装されますが、ここでは 2 番目の方法は単なる回避策です。 . 最後の手段として、リンク フォームを変更するのは不便で柔軟性に欠けます。
皆さんのコミュニケーションやディスカッションを歓迎します!

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック











PHPとPythonには独自の利点と短所があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1.PHPは、大規模なWebアプリケーションの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンスと機械学習の分野を支配しています。

PHPは動的なWebサイトを構築するために使用され、そのコア関数には次のものが含まれます。1。データベースに接続することにより、動的コンテンツを生成し、リアルタイムでWebページを生成します。 2。ユーザーのインタラクションを処理し、提出をフォームし、入力を確認し、操作に応答します。 3.セッションとユーザー認証を管理して、パーソナライズされたエクスペリエンスを提供します。 4.パフォーマンスを最適化し、ベストプラクティスに従って、ウェブサイトの効率とセキュリティを改善します。

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

PHPはMySQLIおよびPDO拡張機能を使用して、データベース操作とサーバー側のロジック処理で対話し、セッション管理などの関数を介してサーバー側のロジックを処理します。 1)MySQLIまたはPDOを使用してデータベースに接続し、SQLクエリを実行します。 2)セッション管理およびその他の機能を通じて、HTTPリクエストとユーザーステータスを処理します。 3)トランザクションを使用して、データベース操作の原子性を確保します。 4)SQLインジェクションを防ぎ、例外処理とデバッグの閉鎖接続を使用します。 5)インデックスとキャッシュを通じてパフォーマンスを最適化し、読みやすいコードを書き、エラー処理を実行します。

PHPはWeb開発と迅速なプロトタイピングに適しており、Pythonはデータサイエンスと機械学習に適しています。 1.PHPは、単純な構文と迅速な開発に適した動的なWeb開発に使用されます。 2。Pythonには簡潔な構文があり、複数のフィールドに適しており、強力なライブラリエコシステムがあります。

PHPの中心的な利点には、学習の容易さ、強力なWeb開発サポート、豊富なライブラリとフレームワーク、高性能とスケーラビリティ、クロスプラットフォームの互換性、費用対効果が含まれます。 1)初心者に適した学習と使用が簡単。 2)Webサーバーとの適切な統合および複数のデータベースをサポートします。 3)Laravelなどの強力なフレームワークを持っています。 4)最適化を通じて高性能を達成できます。 5)複数のオペレーティングシステムをサポートします。 6)開発コストを削減するためのオープンソース。

PHPは1994年に発信され、Rasmuslerdorfによって開発されました。もともとはウェブサイトの訪問者を追跡するために使用され、サーバー側のスクリプト言語に徐々に進化し、Web開発で広く使用されていました。 Pythonは、1980年代後半にGuidovan Rossumによって開発され、1991年に最初にリリースされました。コードの読みやすさとシンプルさを強調し、科学的コンピューティング、データ分析、その他の分野に適しています。

phphassiblasifly-impactedwebdevevermentandsbeyondit.1)itpowersmajorplatformslikewordpratsandexcelsindatabase interactions.2)php'sadaptableability allowsitale forlargeapplicationsusingframeworkslikelavel.3)
