0

PHP などのスクリプト言語がブラウザのページ ソースに表示されないことを理解しています。JavaScriptでも同じではないですか?

もしそうなら、なぜそれらは異なって扱われるのですか? また、ページのソースから JavaScript を隠すための解決策はありますか (ブラウザーによって明らかにされます)?

それを隠す方法についての詳細は必要ありません。作業が行われている場合、私の好奇心からです。

ありがとう!

4

7 に答える 7

4

PHP はサーバー上で実行され、出力 (多くの場合 HTML) を生成しますが、XML、CSS、PHP、画像なども含まれる場合があります。

JS はクライアントに送信され、そこで実行されるため、JS を確認する必要があります。

JS ソースはいつでも表示できますが、難読化することはできます。ただし、適切なデバッガーを使用すれば問題を解決できるため、あまり意味はありません。

たとえば、Webkit ブラウザーで Web Inspector を使用するか、Firebug を使用すると、javascript を表示してブレークポイントを設定し、変数値を確認できるため、何が起こっているのかを理解するのは簡単なことです。

これは問題ありませんが、これが JS の学習が非常に簡単である理由の 1 つです。正しく設計されていれば、これがセキュリティ上の問題を引き起こすことはめったにありません。

JS が壊れていて判読できないサイトを見つける場合があります。これは、ファイル サイズを小さくするために頻繁に行われるため、Web サイトに表示されるすべての .min.js ファイルは、読みにくくするためではありません。

ほとんどの人は、手動で行うのではなく、ビルド プロセスの一部として自動的にこれを行います。これを行うには、https://github.com/mishoo/UglifyJSが適切な選択です。

于 2012-05-30T16:40:03.003 に答える
1

いいえ、サーバー側とクライアント側 (スクリプト) 言語を区別する必要があります。

サーバーサイド スクリプトは [クライアントからは] 目に見えずに実行され、その結果 (js ファイルを含む任意のタイプ) をブラウザーに送信します。これらの結果ファイルは公開されています。

ブラウザは公開ファイルを受け取ります。それらのいくつかは実行可能であり、実行されます。JavaScript は非コンパイル言語であるため、常にそのソースが表示されます。

Javascriptを使用してページのソースを表示しないようにする方法も参照してください。、javascript コードを非表示にする方法など -難読化することしかできません。

于 2012-05-30T16:42:34.863 に答える
1

サーバー側とクライアント側のスクリプト言語があることを理解する必要があります。クライアント (ブラウザ) に表示されるのは、サーバー側スクリプト (PHP、Perl など) の実行の出力です。

とはいえ、JavaScript コードを難読化するために開発されたライブラリがいくつかあります。

于 2012-05-30T16:39:29.230 に答える
1

PHP などのスクリプト言語がブラウザのページ ソースに表示されないことを理解しています。JavaScriptでも同じではないですか?

はい、JavaScript のようなクライアント スクリプトはブラウザーに渡され、ブラウザーによって解析されますが、サーバー サイド スクリプトはブラウザーのソースには表示されません。

もしそうなら、なぜそれらは異なって扱われるのですか? また、ページのソースから JavaScript を隠すための解決策はありますか (ブラウザーによって明らかにされます)?

JavaScript を「隠す」ことはできません。ただし、スクリプトを縮小して難読化することはできます。

http://en.wikipedia.org/wiki/Minification_(プログラミング)

http://en.wikipedia.org/wiki/難読化

于 2012-05-30T16:39:45.140 に答える
1

PHP がブラウザーに「表示」されていないのは、PHP が存在しないためです。PHP は既に HTML としてレンダリングされ、サーバーによってブラウザーに送信されています。(Java サーブレットまたは JSP コードと同じ。)

インライン JavaScriptブラウザに送信されるものの一部であるため、ページ ソースに表示できます。

<script>タグにリンクされた JavaScript ソースは、ページ ソースの一部として表示されません。タグと URL のみが表示されます。

于 2012-05-30T16:40:13.893 に答える
0

Javascript と PHP は 2 つの異なる概念です。そのうちの 1 つはブラウザで見ることができるクライアント側の言語であり、もう 1 つは目に見えないサーバー側です。

JavaScript コードを非表示にする簡単な方法の 1 つは、特定のページに表示されないようにファイルに含めることです。

他の解決策は、それを縮小することです。これは同じように機能しますが、非常に読みにくくなります。

http://en.wikipedia.org/wiki/Minification_%28programming%29

于 2012-05-30T16:44:14.470 に答える
0

PHP はサーバー上で実行されるマクロのようなもので、クライアントに送信されるテキストを出力します。JS は、ブラウザがページのコンテンツを更新するために解釈する必要があるスクリプトです。

于 2012-05-30T16:47:02.030 に答える