MadMark
14.08.2013, 15:03:51
Do sedna:
Mam plik *.php, który obsługuje css i js z url (plik.php?js=plik , plik.php?css=plik), który cudownie chowa oryginalne ścieżki.
Ale mam problem, ponieważ nie chciałbym, aby moich stylów/skryptów używał ktoś poza moimi domenami (liczba mnoga, jest ich kilka!).
Chodzi o sprawdzenie czy host na którym jest plik ma zgodną domenę z aktualnym url.
I chciałbym uniknąć zabawy z adresami IP.
Czy się da? Na pewno się da, bo już to widziałem nie pamiętam na jakiej stronie, ale po prostu nie dało się użyć z niej css/js na innych stronach czy choćby w iframe.
Bez JS'u.
Crozin
14.08.2013, 15:33:50
Nie da się. Jeżeli przeglądarka ma wyświetlić poprawnie Twoją stronę musi otrzymać kompletny kod JS/CSS. A jeżeli moja przeglądarka może to i ja mogę. Jedyne co Ci pozostaje to utrudnienie odczytania tego. W przypadku poprawnie napisanego oprogramowania JS sprawa jest naprawdę bardzo łatwa, ponieważ wszelkie
kompresory zmieniają nazwy zmiennych itd. W przypadku CSS-a właściwie niczego nie osiągniesz.
lobopol
14.08.2013, 15:43:05
Jeżeli chcesz zapobiec hotlinkowaniu swojego css, to możesz spróbować z htaccessem coś w ten deseń:
Kod
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://([-a-z0-9]+\.)?twojadomena\.com [NC]
RewriteRule \.(css|js)$ - [F,NC,L]
MadMark
14.08.2013, 15:51:35
Właściwie nie spodziewam się, że całkowicie się to zablokuje. Chodzi tylko o to, żeby nie dało się "zaincludować" całego pliku js/css poza domeną.
Jak ktoś zrobi "zbadaj element" i sobie sam znajdzie co go interesuje to trudno jak się namęczył to mu się należy. Ale nie żeby od razu cały plik...
lobopol
14.08.2013, 15:58:12
No to htacces i rewrite pobaw się tym co Ci za przykład dałem i masz z głowy. Inaczej się nie da tego zrobić.