Jim Jim
Well-Known Member
آموزش مخفی کردن فایل های css!
برای این کار از PHP و .htaccess استفاده میکنیم
فرض میکنیم یک صفحهای داریم به نام index.php کدهای HTML زیر را هم در آن داریم:
حالا کد PHP زیر را به بالای index.php اضافه میکنیم
یعنی قبل از شروع شدن باید قرار بگیرد:
[PHPS]
<?php
session_start();
$_SESSION["csskey"] = “user”;
?>
[/PHPS]
با اینکار برای کاربر در هنگام ورود یک سشن با نام csskey که برابر با user است، ست کردیم.
سپس یک فایل با نام style.php می سازیم و تکه کد PHP زیر را در ابتدای آن قرار میدهیم و بعد از آن، دستورات CSS مان را اضافه میکنیم:
[PHPS]
<?php
session_start();
header(“Content-type: text/css”);
if ($_SESSION["csskey"] != “user”) {die(“”);}
$_SESSION["csskey"] = “somethingelse”;
?>
[/PHPS]
[CSSS]
body {background-color: #000; color: #fff; direction: rtl;}
[/CSSS]
فکر کنم متوجه شده باشید که چه اتفاقی قرار است بیافتد. Content-type را از نوع text/css میگذاریم تا مرورگر آن را به عنوان یک فایل CSS تفسیر کند.
سپس میگوییم اگر csskey برابر با user نبود، دستورات CSS را بارگذاری نکن و در خروجی «» را چاپ کن.
اما اگر csskey برابر با user بود، آن وقت دوباره csskey را برابر با somethingelse میکنیم و در خروجی دستورات CSS را برمیگردانیم.
و در آخر فقط کافی است دو خط زیر را به فایل .htaccess اضافه کنیم:
درواقع ما عملا هیچ فایلی به نام style.css نداریم و با کمک .htaccess توانسیتم style.php را تبدیل به style.css کنیم.
شاید تنها ایرادی که این روش داشته باشد این است که برای هربار بارگذاری شدن سایت، باید تعدادی دستور PHP اجرا و کامپایل شود و این برای سایتهایی که بازدید بالا دارند اصلاً خوب نیست چرا که فشار زیادی به سرور وارد میشود و مورد دیگر اینکه حتی با استفاده از این روش نیز دستورات CSS مان همچنان با فایرباگ قابل روئیت میباشند!
این کار یکم کار کسانی که میخوان قالب رو ریپ کنند سخت تر میکنه
برای این کار از PHP و .htaccess استفاده میکنیم
فرض میکنیم یک صفحهای داریم به نام index.php کدهای HTML زیر را هم در آن داریم:
HTML:
<html>
<head>
<link rel=”stylesheet” type=”text/css” href=”style.css” />
</head>
<body>
Majid Online
</body>
</html>
حالا کد PHP زیر را به بالای index.php اضافه میکنیم
یعنی قبل از شروع شدن باید قرار بگیرد:
[PHPS]
<?php
session_start();
$_SESSION["csskey"] = “user”;
?>
[/PHPS]
با اینکار برای کاربر در هنگام ورود یک سشن با نام csskey که برابر با user است، ست کردیم.
سپس یک فایل با نام style.php می سازیم و تکه کد PHP زیر را در ابتدای آن قرار میدهیم و بعد از آن، دستورات CSS مان را اضافه میکنیم:
[PHPS]
<?php
session_start();
header(“Content-type: text/css”);
if ($_SESSION["csskey"] != “user”) {die(“”);}
$_SESSION["csskey"] = “somethingelse”;
?>
[/PHPS]
[CSSS]
body {background-color: #000; color: #fff; direction: rtl;}
[/CSSS]
فکر کنم متوجه شده باشید که چه اتفاقی قرار است بیافتد. Content-type را از نوع text/css میگذاریم تا مرورگر آن را به عنوان یک فایل CSS تفسیر کند.
سپس میگوییم اگر csskey برابر با user نبود، دستورات CSS را بارگذاری نکن و در خروجی «» را چاپ کن.
اما اگر csskey برابر با user بود، آن وقت دوباره csskey را برابر با somethingelse میکنیم و در خروجی دستورات CSS را برمیگردانیم.
و در آخر فقط کافی است دو خط زیر را به فایل .htaccess اضافه کنیم:
HTML:
RewriteEngine on
RewriteRule style.css style.php
درواقع ما عملا هیچ فایلی به نام style.css نداریم و با کمک .htaccess توانسیتم style.php را تبدیل به style.css کنیم.
شاید تنها ایرادی که این روش داشته باشد این است که برای هربار بارگذاری شدن سایت، باید تعدادی دستور PHP اجرا و کامپایل شود و این برای سایتهایی که بازدید بالا دارند اصلاً خوب نیست چرا که فشار زیادی به سرور وارد میشود و مورد دیگر اینکه حتی با استفاده از این روش نیز دستورات CSS مان همچنان با فایرباگ قابل روئیت میباشند!
این کار یکم کار کسانی که میخوان قالب رو ریپ کنند سخت تر میکنه