ホームページ  >  記事  >  バックエンド開発  >  ページの静的化、ページ static_PHP チュートリアル

ページの静的化、ページ static_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-12 08:59:10919ブラウズ

ページの静的化、ページの静的

大規模Webサイト向けの最適化テクノロジー:

1、SEO、最適化タイプ、

2、ページの静的化

3、memcache (メモリキャッシュ)

4、サーバークラスターテクノロジー





全体的な目標: Web サイトのアクセス速度を向上させる、SEO の目的: Web サイトのランキングを向上させる、(解決策は速度です)

SEO: Google の最適化、Baidu の最適化:



今日は、 page 静的化について:

最初にいくつかの概念について説明します:

1. 静的 URL

純粋な HTML ドキュメント

http://localhost/dir&file/var.html

しかし、サフィックスは html、静的 Web サイト、



2、動的 URL (Web サイト)

localhost/dir&file/var.php?name=admin&id=2

ユーザーによると、アドレス バーにさまざまなパラメーターを渡します、異なる結果が表示されます



3、疑似静的 URL

Pseudo-static:

TP フレームワークを使用する場合、URL のいくつかのモードがあります:

1、/ pathinfo

2、MVC ?m= &a=

3、書き換えモード: (および pathinfo モードの違い: エントリーファイルなしで書き換える)

Apache 構成を変更する

htacess ファイルを追加する

tp フレームワークの書き換えモード、擬似静的:

localhost/dir&file/news- id/2/name/admin.html



なぜ動的 Web サイトを静的形式に変更する必要があるのですか:

1, /*1=1*/ SQL インジェクションを防ぐため

2、動的 Web サイトはSEO、だから?以下のパラメータは、検索エンジンがクロールするときに動的に変更されますが、保存方法がわかりません

、sina.com/index.htmlindex.php?act=index



原則: データは取得できますか?データベースから操作しないようにしてください



ページの静的化を実現する方法:

ページの静的化の分類:

1、形式に従って:

1、真の静的

2、疑似静的

2、範囲に応じて:

1. 部分的に静的 (jquery、ajax)

2. すべて静的



検索エンジン:

1. Web サイトのすべてのコンテンツをクロールするのではなく、コンテンツをキャプチャします。 one go, put it all ワンピース

2 ただし、コンテンツを分類し、キーワードに従ってランク付けします



SEO に配慮するにはどうすればよいですか?

1、Baidu の提案:

URL の長さ: 255 バイトを超えることはできません

検索エンジンによってクロールされた場合:

ホームページからトリガー: ページに遭遇したら、そのコンテンツをクロールし、コンテンツを保存します,
www.sina.com/index.html

www.sina.com/news/soprt.html

短いものほどクロールが早く、頻度が高く、更新も早いので、良いと思います

そして、各ページをクロールする時間は限られており、各ページは最大 5 秒以内に割り当てられます

もちろん、Web サイトが優れているほど、ランキングが高く、割り当てられる時間も長くなります



2、キーワード説明タグメタタグも設定されています

SEはキーワードと説明に基づいて大まかに分類します

検索エンジンが当社のWebサイトのコンテンツをクロールすることを禁止できます:

Webページのコード の間に nofollow 属性を追加します。 !ハイパーリンクの場合は、 タグに

rel="nofollow" を追加するだけです。

(2) robots.txt



キーワード

説明



(3) 前景でフレーム フレームセットを使用しないようにしてください。背景、フレーム* で使用できます (背景は検索エンジンを回避するため)クロール)

( 4) Flash、代わりに画像を使用してみます。jquery でいくつかの特殊効果を実行してみます

(5) 画像、各画像に alt 属性を追加してみます 画像がまだ表示されていない場合は、alt プロンプト テキストを表示します。最初の

SEO最適化----







ページの静的化を達成する方法:PHPのOBキャッシュランキングランキングを通じて達成360包括的な検索の出現とBaidu の広告は非常に慎重です





1、php の ob キャッシュを通じて実現します

Web サイトのアクセス速度はツールを通じてテストできます

apache には ab.exe が付属していますこのツール

のアクセス速度を検出できます。あなたのウェブサイト





php5.2 より前では、ob キャッシュはデフォルトでオフになっていました php5.3 以降、ob キャッシュはデフォルトでオンになりました

php.ini の出力バッファリング

インタビュー: 開発環境を使用します。 : apache2.2.6

mysql バージョン: 5.3





PHP の ob キャッシュを使用してページの静的化を実現します

1. キャッシュ: Smarty キャッシュ、ThinkPHP フレームワーク キャッシュ、PHP の ob キャッシュ



(1) ob-- -キャッシュ、最初に出力データを配置し、スペースにバッファーします

そして、表示する際に、このスペースのキャッシュされたデータが表示されます

デフォルトでヘッダー情報があり、エコーが発生するとデータがブラウザに送信されます

デフォルトのヘッダーがブラウザに送信されているためエコーとともにインストールされました



obキャッシュを始めましょう

エラーメッセージはありませんか?

obキャッシュの原理を紹介します:

phpキャッシュ:

(1) obキャッシュ

まずobキャッシュが有効かどうかを判断します。有効にする場合は、まず出力データをobキャッシュに入れます。 (2) プログラム キャッシュ

は、ob キャッシュがオンになっていない場合、まずデータをプログラムにキャッシュし、エコーが発生するまで待機することを意味します。が完了したら、均一に出力します



ブラウザにはキャッシュもあります:

ブラウザはまずデータを保存し、一定の量 (つまり 500 MB を超える) に達した場合にのみそれを出力します



方法キャッシュされたデータを取得するには



1, ob_start() まず最初に出力データをobキャッシュに入れます

2, ob_clean() キャッシュをクリアしますが、閉じません

3, ob_end_clean() キャッシュをクリアしますキャッシュもクローズします

4, ob_flush() obキャッシュをクリアします データをプログラムキャッシュに出力します

5, ob_end_flush() obキャッシュしたデータをプログラムキャッシュに出力し、obキャッシュをクローズします



ob_flush( ); //ob キャッシュしたデータをプログラムのキャッシュに出力するだけ

ob_end_flush (); //出力後、ob キャッシュのキャッシュを閉じる



flush() プログラムがキャッシュしたデータをブラウザのキャッシュに出力します

ブラウザ キャッシュ: PHP プログラム キャッシュと同様、最初に各出力をプログラム キャッシュに出力し、出力が完了した後にブラウザに表示します



PHP のキャッシュ メカニズム:

1、ob キャッシュ、ob キャッシュがオンにすると、データは最初に ob キャッシュに配置されます

2、プログラム キャッシュ、ob キャッシュが有効になっていない場合は、データをプログラム キャッシュにキャッシュします



ページの静的化の場合:

ニュース管理システム:

output_buffering = Off タイプ:

varchar(32) : 表示される桁数

varchar(255) :



文字または数字が占めるバイト数: utf-8 漢字 2 文字: 3

gbkすべて 1 文字を占めます セクション



1 varchar 表現される長さの範囲は 0 ~ 65535 です varchar(255)



char 固定長文字列: char(255) エンコード桁数、255 は桁数を表します表示/保存されます

char() 固定長、どれだけ保存しても常に指定されたバイト数になります





int: 最長は 429。 。 15175290987 100億は4バイトを表します

tinyint: 1バイト0-255 unsigned





myisam:とinnodb:差異

1、myisamはトランザクションをサポートしません、innodbはトランザクションをサポートします

2、myisamクエリの速度はinnodb より高速です、

3、myisam は外部キーをサポートしません、innodb は外部キーをサポートします (mysql の新しいバージョンはすでに外部キーをサポートしています)



外部キー、データの整合性を維持します、

トランザクション: 論理 1グループ操作、この操作グループを構成する各ユニットは、すべて成功するかすべて失敗します

3 つの主要な特徴:

アトミック タイプ

一貫性



完全なプロジェクトは統合されておらず、すべてが myisam であるわけではありません。しかし、特定のビジネスに基づいています



問題: データベースは毎回クエリする必要があり、データベースは頻繁に操作されるため、サーバーとデータベースへの負荷が増大し、ユーザーは

10分以内にニュースコンテンツを更新できない可能性があります, そこで、次のようにします:

最初の人が訪問した後、静的ページが生成されます,

2人目、3、4人が再びこのページを訪問すると、静的ページが直接表示されます



問題があります現時点では:

ニュースが残念ながら更新されてしまった場合、どうすればよいですか?

1. 判断





最後に、ニュースを追加または変更するときは、静的ページが生成される必要があります



ニュースを追加すると、静的ページが生成されます:

投稿後、データベースを取得し、静的ページを生成します



テンプレート置換コンテンツを含む

スタイルは基本的に決まっているが、内容が不確かな場合は、まずデータ部分をプレースホルダーに置き換えます

その後、取得後、データを置き換えます 来てください

r fopen()

w



fgets() 関数、コンテンツの行を読み取ります (ただ)

fopen() ドキュメントを開きます r w

fwrite() 開いているドキュメントにコンテンツを書き込みます

feof() 現在のドキュメントが最後まで読み込まれたかどうかをテストします

fclose() ドキュメントを開いた後は必ず閉じてください

file_put_contents() コンテンツをファイルに書き込みます

file_get_contents() ファイルの内容を読み取ります





1、Web サイトの分類

2、Web サイトの最適化 Baidu の Web サイト最適化の提案: 5 つのポイント

3、Web サイトのパフォーマンス (アクセス速度) を検出する方法

4、 obキャッシュ開始

www.bkjia.com本当http://www.bkjia.com/PHPjc/1099825.html技術記事ページの静的化、大規模な Web サイト向けのページ静的最適化テクノロジー: 1. SEO、最適化の一種、2. ページの静的化 3. memcache (メモリ キャッシュ) 4. サーバー クラスター テクノロジーの全体的な目標: 改善...