ウェブサイトを作成しました。そして、クライアントにファイルを渡したいと思います。クライアントは、スタイリングを表示および変更することもできます。そのファイルをエンコードして、誰も置き換えられないようにしたいのです。私だけがスタイリングを変更できるように、より良い解決策を教えてもらえますか?
3 に答える
CSS は、ブラウザで CSS として読み取る必要があるプレーン テキスト形式です。アクセスを制限しても使用できるようにするためにできることは何もありません。ブラウザがファイルをダウンロードして使用できる場合は、他の誰でもダウンロードできます。不要な空白などをすべて取り除くことでコンテンツを少し難読化できますが、これは CSS のプリティ プリンターを使用して簡単に元に戻すことができます。実際にファイルを暗号化し、Javascript で後処理しても役に立ちません。復号化スクリプトが実行する最終結果はプレーンな CSS である必要があるからです。
だから:いいえ、そうではありません。難読化によって本当に馬鹿げたクライアントを思いとどまらせることはできるかもしれませんが、実際にそれを秘密にしておくことはできません。
CSSファイルをエンコードしてブラウザで読み取らせることはできないと思いますが、間違っている可能性があります。CSSファイルを別のサーバーでホストする必要があります。これは簡単です。例えば。クライアントサイトがexample.comで、サイトがawesome.comの場合は、CSSファイルをawesome.comでホストし、編集できるのは自分だけです。
できることは、.css スクリプトを base64 でエンコードすることです。
<html><head>
<title>Hello World!</title>
<link rel="stylesheet" href="data:text/css;base64,Ym9keSB7IHdpZHRoOiA5NjBweDsgbWFyZ2luOiBhdXRvO30gcCB7IGZvbnQtZmFtaWx5OiBWZXJkYW5hO30" type="text/css">
</head><body>
<p>Hello World!</p>
</body></html>
http://www.base64encode.org/のようなサイトを使用します