2018年もGoogle検索に終始し、知りたいことはインターネット検索する日々でしたが、「うわべだけのコピー解説ページ」が多過ぎて、特にGoogle検索のトップページはカオスの迷路です。この記事では「実践」を重視し、間違いの無い処理を行うバッシュ・スクリプトを紹介します。速いレンタル・サーバーだからこそ、2段構えの圧縮による配信を行います。

先ずはWordPressから同じ内容のコンテンツを半分以下のデーター通信にします。インターネット通信網へのストレスを軽減させましょう!



アイ・キャッチ画像(英語版WordPress:featured image)参照元を見る。利用に感謝!


WinSCPで完全ミラーリング

自分専用の秘密鍵と公開鍵を利用して、Windows / WinSCP_ (無料) で、WordPress_を完璧にPCとレンタル・サーバー間をミラーリングする。
同期ボタンで行うローカル-->リモートへのUploadで転送設定」は初期値のデフォルト同期ボタンで行うローカル<--リモートからのDownloadで転送設定」はバイナリにしています。
ミラーリングが不完全なftp通信では以後の解説による改善点は実現不可能です。あなたのレンタル・サーバーで完全、完璧なミラーリングが不能な場合はスルー願います!! わたしはファイルの時刻比較だけでなくて、ファイルのサイズ比較もミラーリングの条件にしているので、PC側はバイナリで管理しています。
_

MakeAfile4Md5.sh

フォルダー以下の全てのファイルを自動的に比較し、1ビットでも異なるファイルの履歴とともに、削除されたファイル、追加されたファイル、1ビットすら全く変わらないファイルのレポートを全自動で残したいのなら無料で利用可能です。
  1. Windows / cygwin (無料) でも動作するbashスクリプトです。
  2. MakeAfile4Md5.sh は、本ブログ記事「ベセスダが開発中の「THE ELDER SCROLLS 6」を待ちながら」で配布開始しました。
  3. MakeAfile4Md5.sh で、 WordPress の全ファイルの更新履歴を記録する。
    筆者は起動時オプションを付加しています。
    -e /wp-content/themes/
    テーマはテーマ個別に処理しています。
  4. 変更を完了した WordPress の全ファイルの比較履歴を MakeAfile4Md5.sh で、記録する。
  • CLICK!
MakeAfile4Md5.sh のソースはここです!

さて開園です

どんな.htaccess」を指定するのか、その具体的なデーターです。わたしは WordPress_ のルートに実際に定義しています。 記事WordPressで問題を起こしているプラグイン Merge + Minify + Refresh 削除手順と配布物のご案内_」で新しい .htaccess の公開を開始しています!
file:
  1. <script src="AAA.js"指定の場合、AAA.js.gzが存在しブラウザーが圧縮受信をサポートしていればリダイレクトする。条件が1つでも合わなければ次を検証する。
  2. <script src="AAA.min.js"指定の場合、AAA.min.js.gzが存在しブラウザーが圧縮受信をサポートしていればリダイレクトする。条件が1つでも合わなければ次を検証する。
  3. <script src="AAA.js"指定の場合、AAA.min.js.gzが存在しブラウザーが圧縮受信をサポートしていればリダイレクトする。条件が1つでも合わなければ次を検証する。
  4. <script src="AAA.js"指定の場合、AAA.min.jsが存在すればリダイレクトする。
  5. 条件が何も合わなければリダイレクトはしない。
WordPress_内のJavaScriptやスタイルのファイル500程のほとんどは、拡張子が.js」や.css」で開発者が見れる「スペース」や「タブ」や「行送り」や「コメント」だらけで、あなたのブラウザーからすると「無駄なデーターのオンパレード」でしかありません。あなたのブラウザーからすると、「必要以上のスペース」も「タブ」も「行送り」さえ、そして「コメント」なんて無用なんです。「一行スクリプト」でも、あなたのブラウザーは困りません!「長いローカル変数名」も「長いローカル関数名」も無駄なだけ。YUICOMPRESSORで贅肉だらけの無駄なデーターをダイエットさせます。これが「一段目の圧縮」です。そして、YUICOMPRESSORでダイエットさせたデーターをgzipで圧縮します。これで「二段目の圧縮」です。こうして2段階に圧縮したデーターを配信します。あなたのブラウザーは喜んで「小さな圧縮データー」を読み込んで、広大な花園をブラウザーに展開します。
  1. <link href="BBB.css"指定の場合、BBB.css.gzが存在しブラウザーが圧縮受信をサポートしていればリダイレクトする。条件が1つでも合わなければ次を検証する。
  2. <link href="BBB.min.css"指定の場合、BBB.min.css.gzが存在しブラウザーが圧縮受信をサポートしていればリダイレクトする。条件が1つでも合わなければ次を検証する。
  3. <link href="BBB.css"指定の場合、BBB.min.css.gzが存在しブラウザーが圧縮受信をサポートしていればリダイレクトする。条件が1つでも合わなければ次を検証する。
  4. <link href="BBB.css"指定の場合、BBB.min.cssが存在すればリダイレクトする。
  5. 条件が何も合わなければリダイレクトはしない。
WordPress_内には、少ないですが、JavaScriptソース・コードを配布せず、YUICOMPRESSOR や 亜流YUICOMPRESSOR を利用して、コードをダイエットしたファイルのみを配布している場合があります。 つまり、.min.jsしか配布されていないケースがあります。

管理者は別格なんです

わたしのWordPressでは管理者は1人です。1人だけが管理者なんです。 だからwp-adminフォルダーの.htaccess」でリダイレクト機能をリセットします。 記事WordPressで問題を起こしているプラグイン Merge + Minify + Refresh 削除手順と配布物のご案内_」で新しい .htaccess の公開を開始していますが、無用となりました!
file:
記事内に「YUICOMPRESSORでのシンタックスチェック結果_」があります。一部のプラグインでデザインが崩れるケースがあります。そんなプラグインにもリセットする .htaccessを定義してリダイレクト機能をリセットしています。

JAVA(無料)を入手する

後述するYUICOMPRESSORを扱いたいなら、JAVAが必要です。
_
  1. Windowsボタン + R
  2. cmd」で、コマンドプロンプト端末を起動する
  3. java -version Enter して、バージョンを表示すればインストール済み
  4. 未インストールの場合は、最新版をダウンロードしてインストールする。JAVA_
  5. 最新版のチェックと更新は「無料版アバスト・アンチウィルス_」の「パフォーマンス」をクリックし、「ソフトウェア・アップデーター」を選択して、「Java Runtime Environment X(xx Bit)」欄で確認とアップデートが可能!

YUICOMPRESSOR(無料)を入手する

YUICOMPRESSOR(無料)_

【参考】: YUICOMPRESSOR ONLINEをきーわーどにして、 Google検索_を行う。

JSとCSSファイルは右クリックで送る

便利なフリーソフトVECTOR コマンドプロンプトに送る_」を利用して、拡張子が.js」や.cssファイル群をWindows右クリックで送るだけ。自動的にYUICOMPRESSOR処理を行って、gzip圧縮化を行います。筆者は Windows7 Professional (64) で利用していましたし、今では Windows10 Professional (64) で利用中です。
file:
監修: 2020/02/14 更新!
SendToCMD.iniは日本語コードShiftJIS_」です。 海外の方は困るでしょう。日本語を扱えない海外の方のご要望があればSendToCMD.iniを修正してダウンロード環境を整えます。
type2 :
自動的に.minを追加します。 WordPress 用です。
type1 :
自動的に-minを追加します。 ミラーリング・ブログの記事本文と追記用に何年も利用してきました。

file: 2019/01/16に更新!
JAVAのパスに保存しています。
例: C:\Program Files (x86)\Common Files\Oracle\Java\javapath
JavaScriptに文法エラーがあると、.min.js.min.js.gzも作成されない! 2019/01/16の改訂で、 .js.MD5 ファイルを削除します。
file: 2019/01/16に更新! 2020/03/28に更新!
JAVAのパスに保存しています。
例: C:\Program Files (x86)\Common Files\Oracle\Java\javapath
2019/01/16の改訂で、 .css.MD5 ファイルを削除します。
2020/03/28の改訂で、 call :IFBIG を追加しました。

7zipが必要です。

auto2015.batautocss2015.batから、無料の圧縮ソフト「7zip」を呼び出して、gzip形式による圧縮を行います。初期値のままインストールします。7-zip.org Download_から .msi版でインストールすることを推奨します。

MakeGZifNewer.shを利用して、
.min.ファイルのチェック

2022/08/11 21:00 JPN MakeGZifNewer.sh を、更新しました。 最新記事:「BupTouchBWAllSources.sh」で新設するディレクトリーに対応しました。 カテゴリー:bash_ 最新データーは、 gitlab.com_ にて、公開中です。
2019/11/14 21:00 MakeGZifNewer.sh を、更新しました。 MD5ファイルの内容が失われ、サイズがゼロになるバグを修正しました。 最新データーは、 gitlab.com_ にて、公開中です。
Windows用Linux Cygwin_Cygwin(64,32) Terminalで、起動します。 わたしは面倒でも日本人が日本人の為にディストリビューションした Kona Linux 4.0 64bit Pro を起動して利用します。 詳細は、カテゴリー:KONA LINUX 4.0_
  1. 仕様の限界:
    フォルダー名もファイル名もスペースを追加するとエラーを表示して中断します!
  2. cygwinのインストール先が、例として、D:\cygwin64だとします。
  3. D:\cygwin64\home\あなたのWindowsログイン・ユーザー名\MakeGZifNewer.shに保存します。
  4. $ cd "WordPressのフォルダー" Enter
  5. $ bash ~/MakeGZifNewer.sh Enter
file:
わたしのパソコンは古いのですけど、Windows7の起動もシャットダウンも時間が掛かります! その点、日本人が日本人用に音源再生にこそ力を注いだLinuxディストリビューションであるKona Linux Pro 64なら、起動もシャットダウンも素早いのです。 本bashスクリプトをKona Linux Pro 64で実行すると、あっと言う間に終了します。 どうやら、Windows7(64) + CygWin(64) で、利用していると、わたしの Windows では、メモリー破綻を来たしてしまいます。 Kona Linux Pro 64」の調整については、カテゴリー: Kona Linux_から潜ってみてください。初期値である”dash”では動作しません!
  1. 以下の特殊なファイルを自動生成します。
    z My Special Data/.IGNOREPATH
    処理しないフォルダー名を記述できます。
  2. 以下のログファイルを適宜作成します。
    z My Special Data/202504080044.log
    ログを残します
    z My Special Data/202504080044 ERRORbyTimeStamp.log
    更新時刻の整合性エラーを起こしているファイルを残します
    z My Special Data/202504080044 ERRORbyJS.log
    JavaScriptファイルについて整合性エラーを起こしているファイルを残します
    z My Special Data/202504080044 ERRORbyCSS.log
    スタイル・ファイルについて整合性エラーを起こしているファイルを残します
    z My Special Data/202504080044 MD5TABLE.log"
    MD5ファイルを残したログを残します
    z My Special Data/MD5TABLE.log"
    MD5を蓄積するファイルです。次回の検査時に照合します。
  3. Q : Do you want to have a process looking for MD5 ? (y/n) [y] :
    ファイルの末尾がMD5である通常ファイルを探して、元となったファイルよりも更新時刻が進んでいる場合、MD5ファイルの更新時刻を元となったファイルより1分を経過した時刻に修正したい場合に処理を選択可能です。特にログは残しません。
  4. Q : Do you want to have a process looking for js ? (y/n) [y] :
    末尾がjsで、.min.jsではない通常ファイルを探して、MD5ファイルが無ければ作成し、 z My Special Data/MD5TABLE.log" に登録されたMD5と検証し、MD5に違いがあればログを残します。.min.js ファイルが存在しない場合ログを残します。
    Q : Exit & Check the file "xxxxx" NOW ? (y/n) [y] : と表示し、Enterすると中断します。次の処理に継続させたい場合は明示的に n を入力します。
  5. Q : Do you want to have a process looking for css ? (y/n) [y] :
    末尾がcssで、.min.cssではない通常ファイルを探して、MD5ファイルが無ければ作成し、 z My Special Data/MD5TABLE.log" に登録されたMD5と検証し、MD5に違いがあればログを残します。.min.css ファイルが存在しない場合ログを残します。
    Q : Exit & Check the file "xxxxx" NOW ? (y/n) [y] : と表示し、Enterすると中断します。次の処理に継続させたい場合は明示的に n を入力します。
  6. Q : Do you want to have a MAIN process ? (y/n) [y] :
    MAIN処理を開始できます。.min.を含み、.gzで終わらない通常ファイルを検索し、
    1. .min.を含まないソースファイルとの更新時刻の整合性を検査し、.min.ファイルの更新時刻が古い場合はエラー報告しログファイルを残します。
    2. .gzファイルの更新時刻が古い場合は、.gzファイルを削除します。
    3. .gzファイルの基のファイルのサイズが1000以下なら、.gzファイルを削除します。
    4. .gzファイルを作成し、基のファイルとのサイズを比較して70%を超えない圧縮率の場合は.gzファイルを削除します。
    5. .gzファイルの更新時刻は、基のファイルの1分を経過した更新時刻に変更します。
  7. Q : Do you want to touch all of .gz files ? (y/n) [y] :
    重複しますが、.gzファイルを検索し、基のファイルの更新時刻に対して1分経過した更新時刻に変更し、それを表示します。ログは残しません。
  8. 最後に、ファイル Thumbs.dbを削除します。
  9. Version:1.4b 2019/11/14: 機能を追加しました。
    ファイルサイズ:0が存在すればレポートします。

改訂版をアップしました

改訂内容は左の画像をクリックしましょう!
  • CLICK!

YUICOMPRESSORでのシンタックスチェック結果

WordPress 5.1.1以降のレポートは、gitlab.com_で、行います!! 2019/03/19 - 2019/05/22


JavaScriptに対して、YUICOMPRESSORは文法検査を行います。シンタックス・エラーがあると、処理を中止し、ダイエット圧縮化を断念します。以下は、シンタックス・エラーを起こすファイルです。
WordPress 5.0.1 - 5.0.3 :
Errors will occur in the following files!
  • wp-content/plugins/classic-editor/js/block-editor-plugin.js
  • wp-content/plugins/css-javascript-toolbox/framework/js/ace/worker-javascript.js
  • wp-content/plugins/css-javascript-toolbox/frameworkvjs/ajax/cjt-server/cjt-server.js
  • wp-includes/js/codemirror/htmlhint.js
  • wp-includes/js/codemirror/jshint.js
  • wp-includes/js/dist/block-library.js
  • wp-includes/js/dist/blocks.js
  • wp-includes/js/dist/components.js
  • wp-includes/js/dist/core-data.js
  • wp-includes/js/dist/data.js
  • wp-includes/js/dist/date.js
  • wp-includes/js/dist/edit-post.js
  • wp-includes/js/dist/editor.js
  • wp-includes/js/dist/format-library.js
  • wp-includes/js/dist/nux.js
  • wp-includes/js/dist/rich-text.js
  • wp-includes/js/tinymce/plugins/link/plugin.js
  • wp-includes/js/tinymce/plugins/media/plugin.js
5.0.2
Six errors !
5.0.3
18 errors !

WordPress 配布サイトへの強い要望

WordPressで新しいマニフェストを作成し、プラグイン開発者に遵守させる!
プラグインやテーマはYUICOMPRESSORでシンタックス・エラーが出ないこと!YUICOMPRESSORでシンタックス・エラーがあるままに配布しないこと!
WordPressのプラグイン・テーマ開発者はYUICOMPRESSORでシンタックス検査を必ず行う!
WordPress開発者は文法ミスのJavaScriptやスタイルシートを提供する無責任を自覚すること!
WordPressユーザーの設定にメニューを新規追加する!
,min.ダイエットされたファイルのダウンロードも希望する」
WordPressユーザーの設定にメニューを新規追加する!
,gz圧縮されたファイルのダウンロードも希望する」
WordPressユーザーの設定メニューの通りアップグレードする!
WordPress本体も、プラグインも、テーマも、WordPressユーザーの設定メニューの通りアップグレードする!

MovableType 5.2

筆者は、ブログ・コンテンツのミラーリングを行っていますが、目下、MovableType書式のインポート・エクスポートファイルで、異なる複数のブログへ記事を次々にインポートさせています。 そのような関係で、MovableType 5.2を利用していますが、面白いのは、JavaScriptは既にYUICOMPRESSORでダイエット済みのコードが配布されていると言う事です。 素人がブログシステムの利用を開始した初日からダイエット圧縮は済んでいるわけです。 -source.jsと命名されたソースコードも配布されています。今回、MovableType 5.2の500を超えるコードをYUICOMPRESSOR処理を行ってみて、シンタックス・エラーは皆無でした! 同じ性能のレンタルサーバーなら、圧倒的にMovableType 5.2_が速い理由の1つでは無いでしょうか?

YUICOMPRESSORの特徴

SmartTVには更新されない古いブラウザーが動作しています。バージョンアップを行わない古いスマートフォン iPhone3, iPhone4 の狭い画面で、 WordPressのデザインが崩れないかチェックします。 古いブラウザーでも正常に機能する JavaScript である事は開発者にとって重要な方向性です。わたしは何年も、毎日、YUICOMPRESSORを利用してきましたが、「自分は間違いを犯さない!」と信じて「間違いを犯すことの真実」を YUICOMPRESSORが教えてくれています。
(function(){var a='';//
a+='AAA '+XYZ+' BBB';//
document.write(a);//
a=null;//
})();//
以上のJavaScriptコードはYUICOMPRESSORでエラー判定しません。仮にグローバル変数である”XYZ”が事前に定義されていない場合は重大なエラーとなり得ます。

圧縮化したデーターを受信できないあなたのブラウザー環境

「プロキシー・サーバー」を経由すると、その「プロキシー・サーバー」の仕様によって、圧縮化したデーターを拒否してしまいます。つまり、
RewriteCond %{HTTP:Accept-Encoding} ! gzip
RewriteRule .*
別サーバーのWordPress [L]
で別のサーバーの WordPress の同じ basenameにリダイレクトして、圧縮化したデーターを拒絶する訪問者を残らず接続を継続させない手段は、通信環境を悪化させない意味でも有効な手段かと考えています。但し、検索ロボットまでを拒絶してしまうと、それは損失かも知れませんが、他のミラーリングしているブログにこそ、検索ロボットとの通信を促進し、メインブログである WordPress_ は、圧縮化したファイルを受信できないあらゆる接続を拒絶しても良いかもしれない。 Google社などが、例えば Android端末で実現しようとしている強制キャッシュ化接続もリダイレクトしてしまうかも知れないけど、圧縮ファイルを拒否されてしまうことによる WordPress側のレンタルサーバー側のストレスを無視できないのです。早速、実装してみます。予定:2019/02/01
実行実施しました!
2019/11/11 03:10 p.m. サーバアクセス障害発生時の回避策_ 特別なハックを追加_

ブログの全てを JavaScriptダイエット圧縮データーで配信する

ブログの記事、追記も JavaScriptダイエットYUICOMPRESSORと、gzipによる二段階圧縮データー」で別ドメインを利用した複数ミラーリング・サーバーから配信する。訪問者が再訪問する場合には、ブラウザー側のキャッシュを積極的に利用し、レンタル・サーバーとの無用・無駄な通信を抑制出来る。 巷では「HTMLファイルをgzipで圧縮し高速通信を果たそう!」などと言う記事がありますが、未来性を感じますか?! インチキですから連絡しない方が得策です。
インターネットで配信するコンテンツを全て JavaScript二段階圧縮ファイルで配信するべきです! 例えばブログもミラーリング投稿を行っても JavaScript二段階圧縮ファイルは一元管理可能です。 勿論、 JavaScript二段階圧縮ファイルはドメインを利用したミラーリングされた複数のサーバーから分散配信します。この記事は12の異なるブログでミラーリングされていますが、コンテンツは全く同じデーターを配信しています。 誤字脱字も全く同じです。 JavaScript二段階圧縮ファイルでの配信ですから、訪問者のブラウザーは完璧にキャッシュしてくれます。 再訪問、再表示は、益々高速で完了します。
記事:flickr.comの体制変化に対応できる範囲で対応しよう!

JavaScript変数化するマクロ・スクリプト
に、
HTML構文データーをJavaScriptの変数に
格納するマクロを公開しています!
ここ_です。

auto2020.bat

記事WordPressで問題を起こしているプラグイン Merge + Minify + Refresh 削除手順と配布物のご案内_」で、発展型MSバッチファイルを公開開始しました。 わたしはauto2020.batを利用しています。

記事の改訂の告知について

DISQUSコメントで案内します。

DISQUSコメントにログインし、DISQUSコメント枠の一番下段の左端のメール・シンボルをクリックすれば、DISQUSコメントがあれば自動的にメールで知らせてくれます。 再度クリックすれば、メール通知を停止できます。 記事末尾のDISQUSコメントの表示が小さくてスレッドのデザインが狭過ぎると思うなら、DISQUSコメント本尊に接続_してみてください。


サポートが必要ですか?


Support AIt's free and fastSupport BIt's free and fastSupport CIt's free and fast

「無料サポート」に興味があれば
上の丸ボタンをクリック願います。
サーバーから9kbを受信しますのでお待ち願います。


※ 記事本文は別サーバーから JavaScriptファイルとして配信しており、配信元のサーバーにおける JavaScriptファイル(YUICOMPRESSOR済み)も、実際にあなたのブログが受信する gzip圧縮済みの JavaScriptファイルも、30日間のキャッシュ流用を定義していますので、特にご質問の前にブラウザーのキャッシュを削除してから、再度のご訪問と閲覧をお願い致します。
※ DISQUSについては別管理ですので、毎回、最新のDISQUSを表示できています。 但し、ご自分のDISQUSコメントを編集した直後に編集後の内容に至らない場合がありますが、DISQUS表示の上部にある「あなたの言語でDISQUSメニューを再表示する!」をクリックしますと最新の状況を表示致します。 宜しくご理解願います。
※ どれだけ待ってもDISQUSが表示されない場合は「広告ブロック」機能を切ってみて下さい。
Google Translator.

良いブログと利用できないブログ


  • CLICK!