ホームページ > バックエンド開発 > PHPチュートリアル > PHP 擬似静的ページを実装する 3 つの方法_PHP チュートリアル

PHP 擬似静的ページを実装する 3 つの方法_PHP チュートリアル

WBOY
リリース: 2016-07-13 17:45:20
オリジナル
845 人が閲覧しました

PHP の疑似静的書き込みメソッド - 1 つ

疑似静的別名: URL 書き換え

主にSEO用です。 (SEOって何ですか? こんなことは聞かないでください。笑~インターネットで仕事をしている人はSEOを理解していません~~~~)

方法 1:

たとえば、このページ

http://www.BkJia.com /soft.php/1,100,8630.html

実際、処理されるスクリプトはsoft.phpで、パラメータは1,100,8630です

Soft.php?a=1&b=1=100&c=8630 と同等ですが、この URL は覚えるのが難しすぎます。検索エンジンもそれを好みません。

真の静的とは、完全に生成された HTML です。

クライアントがアクセスしたときに直接出力します。スクリプトの説明は不要です。トラフィックが非常に多い場合 (毎日何百万ものアクセスがある場合など)、非常に良い結果が得られます。つまり、この HTML ページはサーバー側に実際に存在します。

もちろん、ウェブサイトのトラフィックがそれほど大きくない場合です。 URL の書き換えが最良の方法です (私の個人的な意見では、トラフィックが多い場合は負荷分散を検討できます。どちらでも構いません)

URL 書き換えには、APACHE や IISREWRITE など、さまざまな方法があります。 PHP スクリプトでも直接処理できます。たとえば、上記の例では、PHP スクリプトが直接処理しています (この方法の利点は、大量のトラフィックがあるときに WEB サーバーの負荷を直接軽減できることです。 PS: これは私の個人的な意見でもあります:

================================================

PHP の疑似静的プログラムの実装方法について、プログラムを例に挙げて説明します。実は、私は以前にこの方法を他のフォーラム コミュニティに投稿したことがあります。

プログラム例:

http://www.BkJia.com /soft.php/1,100,8630.html

コード:

//サーバー変数を使用してPATH_INFO情報を取得します。この例では、実行スクリプト名以降の/1,100,8630.htmlです。

if(@$path_info =$_SERVER["PATH_INFO"]){

//パラメータを定期的に一致させます

if(preg_match("//(d+),(d+),(d+).html/si",$path_info,$arr_path)){

$gid =intval($arr_path[1]); //値1を取得

$sid =intval($arr_path[2]); //値100を取得

$softid =intval($arr_path[3]); //値 8630 を取得します

}else die("パス:エラー!");

//soft.php?gid=1&sid=100&softid=8630

と同等

//とても簡単です。 ~)


方法 2:

1. Apache 構成ファイル httpd.conf を開きます。

2. #LoadModule rewrite_module modules/mod_rewrite の前の # を削除します

3. httpd.conf を追加します:

リライトエンジンオン

#RewriteCond %{ENV:SCRIPT_URL} (?:index|dispbbs)[-0-9]+.html
RewriteRule ^(.*?(?:index|dispbbs))-([-0-9]+).html 1.php?__is_apache_rewrite=1&__rewrite_arg=2


4. ASP ポスト URL を php ポストにマッピングするには、3 番目のステップで の間に追加します。

RewriteMap を小文字 int:to lower にします

RewriteCond %{QUERY_STRING} (?:boardid|page|id|replyid|star|skin)=d+ [NC]

RewriteRule ^(.*(?:index|dispbbs)).asp 1.php?{to lowercase:%{QUERY_STRING}}&__is_apache_rewrite=1


5. httpd.conf を保存し、Apache を再起動します

方法 3:

/*

機能: PHP疑似静的ページの実装

具体的な使い方:
たとえば、リンクは次のとおりです: test.php/year/2006/action/_add.html
mod_rewrite();
$yearn=$_GET["year"];//結果は「2006」です
$action=$_GET["action"];//結果は '_add' です

*/
関数 mod_rewrite(){

グローバル $_GET;

$nav=$_SERVER["REQUEST_URI"];
$script_name=$_SERVER["SCRIPT_NAME"];
$nav=substr(ereg_replace("^$script_name","",urldecode($nav)),1);
$nav=preg_replace("/^.ht(m){1}(l){0,1}$/","",$nav);//この文は末尾の .html または .htm を削除します
$vars =explode("/",$nav);
for($i=0;$i $_GET["$vars[$i]"]=$vars[$i+1];
}
$_GET を返します;
}
mod_rewrite();
$yearn=$_GET["year"];//結果は「2006」です
$action=$_GET["action"];//結果は '_add' です
エコー $yearn;
エコー $アクション;
?>

/*

機能: PHP疑似静的ページの実装

具体的な使い方:
たとえば、リンクは次のとおりです: test.php/year/2006/action/_add.html
mod_rewrite();
$yearn=$_GET["year"];//結果は「2006」です
$action=$_GET["action"];//結果は '_add' です

*/
関数 mod_rewrite(){
グローバル $_GET;
$nav=$_SERVER["REQUEST_URI"];
$script_name=$_SERVER["SCRIPT_NAME"];
$nav=substr(ereg_replace("^$script_name","",urldecode($nav)),1);
$nav=preg_replace("/^.ht(m){1}(l){0,1}$/","",$nav);//この文は末尾の .html または .htm を削除します
$vars =explode("/",$nav);
for($i=0;$i $_GET["$vars[$i]"]=$vars[$i+1];
}
$_GET を返します;
}
mod_rewrite();
$yearn=$_GET["year"];//結果は「2006」です
$action=$_GET["action"];//結果は '_add' です
エコー $yearn;
エコー $アクション;
?>

この方法が一番直接的です...個人的には思います!~~~ふふふ...水木忍があなたに提供します...

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/478694.html技術記事 PHP の擬似静的書き込みメソッド - 擬似静的メソッドの 1 つ: URL 書き換えは主に SEO を目的としています。 (SEOって何ですか? こんなことは聞かないでください。笑~インターネットで仕事をしている人はSEOを理解していません~~~~)...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート