ホームページ php教程 php手册 ページの最適化と擬似静的について

ページの最適化と擬似静的について

Jun 13, 2016 pm 12:21 PM
apache smarty 最適化 について そして 通常 詳しい 静的 ページ

ページ最適化と擬似静的について

1) レイアウトの最適化
2) 擬似静的 (Apache、smarty、register を中心に)

詳細:

1.レイアウトの最適化:
レイアウトの最適化には、実際には主に HTML、JS、CSS、および XML 間の関係が含まれます (XML 関連についてはここでは説明しません)。
1) 一般的に、リソース共有を前提として、最も基本的なものです。目的は、検索エンジンに組み込まれることです(AJAXと混同してあちこちでAJAXを使っている人も多いですが、私の考えではAJAXはバックグラウンドやユーザーの操作部分でのみ使用すべきです
したがって、まず第一に。 、検索エンジンの組み込みガイドラインに従って設計する必要があります (実際、以下で説明する「疑似静的」は検索エンジン用ではありません。関連するドキュメントが数ページあるため、ご自身で検索してください)。主に HTML を使用します。

2) など、読み込み速度とコンテンツの純度の問題を解決します。
主に次の原則:
1> レイアウトを美しくするために、不要な HTML を追加しないことをお勧めします。美しいレイアウトはCSSに任せ、CSSの再利用性を真剣に考えるため、HTMLは情報内容の記述としてのみ使用されます(XMLが中心になっているようです)。インターネット上の多くのサイトをランダムにチェックしましたが、優れた Web サイトでは、HTML が全体のコンテンツの 50% 未満を占めていますが、一部のサイトではテキスト コンテンツが全体の 20% 未満を占めています。 JS と CSS をファイルに書き込みます。ブラウザの CAHCHE を使用してコンテンツのダウンロードを減らす限り、HTML タグのネストは最小限にする必要があります。TABLE のネストは実際には 11 レベルです。汗だくです...

3) 妥当なデータ処理時間の問題を解決します
これには、主に多くのコンテンツが含まれます

2. 擬似静的
これは主に、 Apache と Smarty のアプリケーション もちろん、どのテンプレートを使用するかは問題ではありません。私は長年 Smarty を使用しており、その威力を痛感しています。
この部分。主に、システムを制御でき、Apache と正規表現に精通しているユーザーを対象としています。

ここでの核心は、正規表現の適用を強調することです。正規表現を知らなければ、不変の剽窃段階に留まるか、正規表現を使用することさえできません。式はアプリケーションで一般的に使用され (基本的にどの言語でも (すべての言語で)、頻繁に使用され、強力です。著者は依然として、時間をかけてさらに学習し、一生使用することを推奨しています
検索エンジンの場合、私の知る限り、重要なのは、 GET で "?"、"&"."php" を処理することです。URL の長さの問題もありますが、これは問題ありません。形式は個人の好みによって異なります。
最初に APACHE について話しましょう。重要なのは、mod_rewrite を使用して mod_rewrite モジュールを開くことです (httpd.conf で、LoadModule rewrite_module modules/mod_rewrite.so の前の「#」を削除します)。

If vhost () を使用します。次のようなコードを vhost に追加できます:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^xxx.com$
RewriteRule ^/([^./] ) .html$ /index. php?action=$1 [L]

説明:
上記の設定は必ずしも vhost に配置する必要はなく、個人の要件に応じて適切に配置してください。
最初の行は、vhost が rewrite (URL 書き換え) を使用することを示します。
2 行目の RewriteCond は、次の条件が満たされる場合に使用されます (最初のパラメーターが 2 番目のパラメーターを満たし、2 番目のパラメーターが正規表現です)。 、次の RewriteRule 命令を実行します。ここで、%{xxxx} は Apache 変数を表し、%{HTTP_HOST} は URL のホスト (ドメイン名) を表します。その他の変数については、Apache2 マニュアルの 3 行目
を参照してください。 URL 書き換え (ハイライト) を実装します。最初のパラメータはブラウザに入力された URL で、通常のルールを満たす URI が書き換えられます。2 番目のパラメータは書き換えルール、つまり最初のパラメータを満たす URL です。このルールに従って書き換えられます。必要な URL に変換します。ここで、書き換えられた URL に「http://」が含まれる場合、リダイレクトされたアドレスがブラウザのアドレス バーに表示されることを指摘しなければなりません。 3 番目のパラメーターは何らかの制御です。たとえば、上記の [L] は、書き換えが最後のものであり、後続の書き換えルールは実行されないことを示します。

スマートな部分:
主に、Apache の書き換えを使用した後、ページ内のリンクはそのルールを使用します。これは、abc.php?action であることがわかります。 = Doit は abc/action-doit.html のような形で表現すればいいのですが、もちろんページ作成時に手動で変更することもできますが、これは愚かな方法だと思います。 (ob_xxxx() シリーズの関数の使用については、PHP マニュアルを参照してください。) ここでの導入では、より柔軟になるため、smarty を使用します。
Smarty では、 register_outputfilter() を使用して処理メソッドを登録します。特定のメソッド 同様:
//最初に処理関数を定義します
function change_url($tpl_output, &$smarty)
{
$tpl_output=preg_replace(”//index.php??action= ( [^&] )/i”,”/\1.html”,$tpl_output);
return $tpl_output;
}
// この関数の最初のパラメータは、smarty のページ コンテンツです。 2 つ目はスマート ポインターです。
//次に、
$tpl->register_outputfilter("change_url"); を使用します。

register_outputfilter() メソッドは、次の関数に渡されます。 change_url($tpl_output, &$smarty) 最初のパラメータは、smarty によって処理されるページ コンテンツです
同じ型には、事前フィルタリング メソッド register_prefilter() もあります。これは、smarty テンプレートを最初のパラメータに渡すことを意味します。 、smartyのマニュアルを参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

ApacheでCGIディレクトリを設定する方法 ApacheでCGIディレクトリを設定する方法 Apr 13, 2025 pm 01:18 PM

ApacheでCGIディレクトリを設定するには、次の手順を実行する必要があります。「CGI-Bin」などのCGIディレクトリを作成し、Apacheの書き込み許可を付与します。 Apache構成ファイルに「Scriptalias」ディレクティブブロックを追加して、CGIディレクトリを「/cgi-bin」URLにマッピングします。 Apacheを再起動します。

Apacheバージョンを表示する方法 Apacheバージョンを表示する方法 Apr 13, 2025 pm 01:15 PM

Apacheサーバーでバージョンを表示するには3つの方法があります。コマンドライン(Apachectl -vまたはapache2ctl -v)を介して、サーバーステータスページ(http://< server ipまたはdomain name>/server -status)を確認します。

Apacheのデータベースに接続する方法 Apacheのデータベースに接続する方法 Apr 13, 2025 pm 01:03 PM

Apacheはデータベースに接続するには、次の手順が必要です。データベースドライバーをインストールします。 web.xmlファイルを構成して、接続プールを作成します。 JDBCデータソースを作成し、接続設定を指定します。 JDBC APIを使用して、接続の取得、ステートメントの作成、バインディングパラメーター、クエリまたは更新の実行、結果の処理など、Javaコードのデータベースにアクセスします。

Apache80ポートが占有されている場合はどうすればよいですか Apache80ポートが占有されている場合はどうすればよいですか Apr 13, 2025 pm 01:24 PM

Apache 80ポートが占有されている場合、ソリューションは次のとおりです。ポートを占有するプロセスを見つけて閉じます。ファイアウォールの設定を確認して、Apacheがブロックされていないことを確認してください。上記の方法が機能しない場合は、Apacheを再構成して別のポートを使用してください。 Apacheサービスを再起動します。

Apacheバージョンを表示する方法 Apacheバージョンを表示する方法 Apr 13, 2025 pm 01:00 PM

Apacheバージョンを表示する方法は? Apache Serverを起動する:sudo service apache2を使用してサーバーを起動します。バージョン番号の表示:次のメソッドのいずれかを使用してバージョンを表示します。コマンドライン:apache2 -vコマンドを実行します。サーバーステータスページ:WebブラウザーでApacheサーバーのデフォルトポート(通常80)にアクセスすると、バージョン情報がページの下部に表示されます。

Apache用のZendを構成する方法 Apache用のZendを構成する方法 Apr 13, 2025 pm 12:57 PM

ApacheでZendを構成する方法は? Apache WebサーバーでZend Frameworkを構成する手順は次のとおりです。ZendFrameworkをインストールし、Webサーバーディレクトリに抽出します。 .htaccessファイルを作成します。 Zend Application Directoryを作成し、index.phpファイルを追加します。 Zend Application(Application.ini)を構成します。 Apache Webサーバーを再起動します。

Apacheを開始できない問題を解決する方法 Apacheを開始できない問題を解決する方法 Apr 13, 2025 pm 01:21 PM

Apacheは、次の理由で起動できません。構成ファイル構文エラー。他のアプリケーションポートとの競合。権限の問題。メモリから。デッドロックを処理します。デーモン障害。 Selinux許可の問題。ファイアウォールの問題。ソフトウェアの競合。

Apacheのサーバー名以上の削除方法 Apacheのサーバー名以上の削除方法 Apr 13, 2025 pm 01:09 PM

Apacheから追加のservernameディレクティブを削除するには、次の手順を実行できます。追加のservernameディレクティブを識別して削除します。 Apacheを再起動して変更を有効にします。構成ファイルを確認して、変更を確認します。サーバーをテストして、問題が解決されていることを確認します。

See all articles