.htaccess: Różnice pomiędzy wersjami
Linia 1: | Linia 1: | ||
{{Stub}} | {{Stub}} | ||
− | Serwer [[WWW]] obsługuje httpd nginx | + | Serwer [[WWW]] obsługuje httpd nginx z autorskim modułem obsługującym "standard" ''htaccess'' pozwalający tworzyć własne zestawienia reguł rewrite. |
− | Wszystkie ustawienia można edytować samodzielnie | + | Wszystkie ustawienia można edytować samodzielnie tworząc plik .htaccess w folderze <code class="directory">public_html/</code> (lub ewentualnie podfolderach) danej domeny. |
=== Przykłady === | === Przykłady === | ||
Poniżej znajduje się kilka przykładów zastosowania tego pliku. Część z nich jest autorstwa użytkowników MyDevil. | Poniżej znajduje się kilka przykładów zastosowania tego pliku. Część z nich jest autorstwa użytkowników MyDevil. | ||
+ | |||
====Przekierowanie subdomeny na podkatalog==== | ====Przekierowanie subdomeny na podkatalog==== | ||
Linia 19: | Linia 20: | ||
RewriteEngine on | RewriteEngine on | ||
RewriteCond %{HTTP_REFERER} !^$ | RewriteCond %{HTTP_REFERER} !^$ | ||
− | <nowiki>RewriteCond %{HTTP_REFERER} !^http://domena$ [NC]</nowiki> | + | <nowiki>RewriteCond %{HTTP_REFERER} !^http://''domena''$ [NC]</nowiki> |
− | <nowiki>RewriteCond %{HTTP_REFERER} !^http://.*\.domena$ [NC]</nowiki> | + | <nowiki>RewriteCond %{HTTP_REFERER} !^http://.*\.''domena''$ [NC]</nowiki> |
− | <nowiki>RewriteCond %{HTTP_REFERER} !^http://domena/.*$ [NC]</nowiki> | + | <nowiki>RewriteCond %{HTTP_REFERER} !^http://''domena''/.*$ [NC]</nowiki> |
− | <nowiki>RewriteCond %{HTTP_REFERER} !^http://.*\.domena/.*$ [NC]</nowiki> | + | <nowiki>RewriteCond %{HTTP_REFERER} !^http://.*\.''domena''/.*$ [NC]</nowiki> |
RewriteRule .*\.(jpg|jpeg|gif|bmp)$ - [F,NC] | RewriteRule .*\.(jpg|jpeg|gif|bmp)$ - [F,NC] | ||
====Zabezpieczanie katalogu hasłem==== | ====Zabezpieczanie katalogu hasłem==== | ||
− | Istnieje możliwość zabezpieczenia całego katalogu na stronie hasłem (lub nawet całej strony WWW). W poniższych przykładach argument username należy zastąpić loginem wybranego użytkownika, a argument ''login'' loginem konta MyDevil. | + | Istnieje możliwość zabezpieczenia całego katalogu na stronie hasłem (lub nawet całej strony WWW). W poniższych przykładach argument ''username'' należy zastąpić loginem wybranego użytkownika, a argument ''login'' loginem konta MyDevil. |
− | Plik z hasłami należy utworzyć dodając pierwszego użytkownika poleceniem <code>htpasswd -c /usr/home/''login''/hasla.passwd username</code>. Folder, który ma być chroniony hasłem powinien zawierać plik .htaccess o następującej treści: | + | Plik z hasłami należy utworzyć dodając pierwszego użytkownika poleceniem <code>htpasswd -c /usr/home/''login''/hasla.passwd ''username''</code>. Folder, który ma być chroniony hasłem powinien zawierać plik .htaccess o następującej treści: |
AuthType Basic | AuthType Basic | ||
AuthUserFile "/usr/home/''login''/hasla.passwd" | AuthUserFile "/usr/home/''login''/hasla.passwd" | ||
Linia 37: | Linia 38: | ||
====Domyślne kodowanie plików tekstowych ==== | ====Domyślne kodowanie plików tekstowych ==== | ||
− | W przypadku | + | W przypadku udostępniania plików .txt w których nie sposób określić kodowania znacznikiem meta bądź innych plików w których nie ustawiono kodowania można wymusić prawidłowe wyświetlanie przez przeglądarki za pomocą dyrektywy <code>AddDefaultCharset</code>, np. |
AddDefaultCharset utf-8 | AddDefaultCharset utf-8 | ||
[[Category:WWW]] | [[Category:WWW]] |
Wersja z 16:38, 13 mar 2015
Szablon:Stub Serwer WWW obsługuje httpd nginx z autorskim modułem obsługującym "standard" htaccess pozwalający tworzyć własne zestawienia reguł rewrite.
Wszystkie ustawienia można edytować samodzielnie tworząc plik .htaccess w folderze public_html/
(lub ewentualnie podfolderach) danej domeny.
Spis treści
Przykłady
Poniżej znajduje się kilka przykładów zastosowania tego pliku. Część z nich jest autorstwa użytkowników MyDevil.
Przekierowanie subdomeny na podkatalog
Przekierowanie subdomeny test.domena na domena/test bez tworzenia vhosta.
RewriteEngine On RewriteCond %{HTTP_HOST} ^(www\.)?test\.domena$ [NC] RewriteCond %{REQUEST_URI} !^/test/ RewriteRule ^(.*)$ /test/$1 [L]
Zabezpieczenie przed hotlinkowaniem obrazków
Hotlinkowanie to umieszczanie na stronie obrazków, które użytkownik pobiera z zewnętrznego serwera. Przykładowa blokada wygląda następująco.
RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://''domena''$ [NC] RewriteCond %{HTTP_REFERER} !^http://.*\.''domena''$ [NC] RewriteCond %{HTTP_REFERER} !^http://''domena''/.*$ [NC] RewriteCond %{HTTP_REFERER} !^http://.*\.''domena''/.*$ [NC] RewriteRule .*\.(jpg|jpeg|gif|bmp)$ - [F,NC]
Zabezpieczanie katalogu hasłem
Istnieje możliwość zabezpieczenia całego katalogu na stronie hasłem (lub nawet całej strony WWW). W poniższych przykładach argument username należy zastąpić loginem wybranego użytkownika, a argument login loginem konta MyDevil.
Plik z hasłami należy utworzyć dodając pierwszego użytkownika poleceniem htpasswd -c /usr/home/login/hasla.passwd username
. Folder, który ma być chroniony hasłem powinien zawierać plik .htaccess o następującej treści:
AuthType Basic AuthUserFile "/usr/home/login/hasla.passwd" require valid-user AuthName "Zabezpieczony katalog"
AuthUserFile wskazuje na plik, który utworzono wcześniej. Jest możliwość używania różnych plików z loginami i hasłami do różnych folderów. Usuwanie użytkownika odbywa się za pomocą polecenia htpasswd -D /usr/home/login/hasla.passwd username
.
Domyślne kodowanie plików tekstowych
W przypadku udostępniania plików .txt w których nie sposób określić kodowania znacznikiem meta bądź innych plików w których nie ustawiono kodowania można wymusić prawidłowe wyświetlanie przez przeglądarki za pomocą dyrektywy AddDefaultCharset
, np.
AddDefaultCharset utf-8