1. Do czego służą pliki .htaccess
?
Plik .htaccess pozwala na pewne zmiany w konfiguracji serwera. Zmiany te są
widoczne tylko w podkatalogach i katalogu, w którym ten plik się znajduje.
Jeśli wstawimy do jakiegoś podkatalogu inny plik .htaccess następuje zmiana
parametrów w tym katalogu i znów w podkatalogach tego podkatalogu
Pamiętaj, że każdą komendę konfiguracji definujemu po enterze (chr(13));
Ogólnie mówiąc dzięki plikom .htaccess możemy ustawić parametry dla kilku
tysiecy stron jednocześnie zmiast ustawiać je pojedyńczo.
2. Przykłady
Kod:
ErrorDocument 400
/400.php
ErrorDocument 401 /401.php
ErrorDocument 403 /403.php
ErrorDocument 404 /404.php
ErrorDocument 500 /500.php
ErrorDocument 503 /503.php
Dzieki tym linijkom mozemy określić własne strony z informacją o danym błędzie.
Oto mój przykładowy plik strony informującej o błędzie:
Kod:
<?php
// logi
Function
logs($msg){
global
$HTTP_USER_AGENT,
$_SERVER;
$url
=
sprintf("%s%s%s","http://",$_SERVER['HTTP_HOST'],$_SERVER['REQUE
ST_URI']);
$plik='http';
if($_SERVER['HTTPS']=='on'){$plik.='s';}
$plik.='://'.$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME'];
if($_SERVER['QUERY_STRING']>'
'){$plik.='?'.$_SERVER['QUERY_STRING'];}
if ($_SERVER["HTTP_X_FORWARDED_FOR"])
{
if ($_SERVER["HTTP_CLIENT_IP"])
{
$mz_user['proxy']=$_SERVER["HTTP_CLIENT_IP"];
}else{
$mz_user['proxy']=$_SERVER["REMOTE_ADDR"];}
$mz_user['ip']=$_SERVER["HTTP_X_FORWARDED_FOR"];
}else{
if ($_SERVER["HTTP_CLIENT_IP"])
{
$mz_user['ip']=$_SERVER["HTTP_CLIENT_IP"];
}else{
$mz_user['ip']=$_SERVER["REMOTE_ADDR"];}}
$h=@fopen('logs.txt','a');
// pamietaj aby ustawic
chmod na 622
@fwrite($h,date('H:i:s
d-m-Y').'
ip: '.$mz_user['ip'].'
proxy: '.$mz_user['proxy'].'
plik: '.$plik.'
url: '.$url.'
'.$msg.'
');
@fclose($h);
return
$msg;}
// log
logs('404
- Plik nie istnieje');
?>
<html><head><meta
http-equiv="Content-type" content="text/html; charset=iso-8859-2"/>
</body></html>
Kod:
deny from all
blokowanie dostępu z zew. nikt nie wylistuje tego folderu i nie podejży w nim
plików(oprócz użytkownika oraz twoich skryptów)
Kod:
deny from 000.000.000.000
Blokowanie danego zakresu ip
Kod:
deny from all
allow from 000.000.000.000
Dostęp tylko z danego zakresu ip
Kod:
Redirect /scizka
http://www.innastrona.pl/stara
przekierowanie przy próbie dostępu do danego pliku(oczywiscie z poziomu
przegladarki), jesli ktos bedzie chcial odczytac np.
[ www ] to automatycznie przekieruje go do
[ www ]
Kod:
AuthName "Section Name"
AuthType Basic
AuthUserFile /scizka/do/.htpasswd
Require valid-user
Ustawienie hasła dostępu dla danego folderu. Section Name zastępujemy naszym
komunikatem, a /scizka/do/.htpasswd sciezka do pliku .htpasswd, w ktorym
przechowywane są hasła.
Hasła przechowuje się w formacie:
login:haslo
Jeśli chcesz możesz dodać kilka userów (poprostu dodajesz kolejne linijki z "login:haslo".
Pamiętaj, że hasło musi być zakodowane.
Do tego celu użyj funkcji crypt z php
[ www ]
Kod:
<?php
echo
crypt('haslo',CRYPT_STD_DES);
?>
Kod:
AuthName "Section
Name"
Access allow all users marek jacek
Dostęp tylko dla użytkowników o loginach marek i jacek
Kod:
AuthName "Section
Name"
Access allow all groups lolki
Dostęp tylko dla użytkowników należących do grupy lolki
Kod:
AuthName "Section
Name"
Access allow 192.45.111.222
Dostęp tylko dla użytkowników mających ip: 192.45.111.222
Kod:
AuthName "Section
Name"
Access allow 195.205
Dostęp dla dowolnego hosta, którego ip zaczyna się od 194.45
Kod:
HeaderName /HEADER.HTML
ReadmeName /README.HTML
Dzięki tym linijkom gdy nie będzie w danym folderze pliku index apache wylistuje
katalogi z tym, że zaincluduje pliczki HEADER.HTML oraz README.HTML,
Czemu takie nazwy, te pliczki są ukrywane przy listowaniu, Czemu / przed nimi,
gdy będzie bez / to bedzie includowal te pliczki tylko dla tego katalogu w
którym jest pliczek .htaccess
To jest szczególnie przydatne gdy chcemy zrobić stronę opartą o listowanie
folderów oraz chcemy wiedziec ile na niej przebywa osób (można smiało do pliku
README lub HEADER wsadzić jakieś statystyki)
Uwaga nie radze zmieniać rozmiarów i typów czcionek bo całe listowanie może się
rozwalić ;/
Kod:
AddType
application/x-httpd-php .jpg
Określa typ dla danego rozszerzenia, w przykładzie wyżej, ustawione jest, iż w
plikach .jpg zostanie wykonywany kod php
Kod:
AddType text/html .shtml
AddHandler server-parsed .shtml
Options Indexes FollowSymLinks Includes
Czasem SSI jest domyślnie wyłączone, ten wpis to zmieni.
Kod:
DirectoryIndex
plik.html abc.def
Chciałbyś zmienić nazwę domyślnego pliku(np. index.php, index.html), który jest
wyświetlany ? Nic trudnego wystarczy ten wpis. W nim decydujemy jaki plik ma być
załadowany gdy nie jest podany konkretny plik. Pamiętaj, że kolejność ma
znaczenie. Ponieważ jak nie będzie istniał jeden plik to serwer sprawdzi czy
kolejny na liście istnieje, jeśli tak to go zaladuje.
Kod:
:Location /*.muzyka
SetMime audio/mpeg
Ustawienie wartości mime (jest to rozszerzenie, które pobiera przeglądarka,
następnie decyduje jaki program je obsługuje i uruchamia go) dla danego
rozszerzenia plików w danym katalogu (można określić dla konkretnego pliku)
Kod:
<Files .htaccess>
order allow,deny
deny from all
</Files>
Parametry dla danego pliku (jeśli wstawimy * to plików). W tym przypadku
ustawiamy brak dostępu dla osób, które chciałyby podejrzeć nasze pliczki .htaccess.
Jest to bardzo ważne ponieważ jak bronimy dostępu do jakiegoś pliku lub katalogu
hasła mogą być przechowywane w takich pliczkach, a co za tym idzie podglądane
przez przeglądarke (przy odpowiednich ustawieniach serwera), dlatego warto to
zmienić.
Kod:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER}
!^http://(www\.)?twoja-strona.pl/.*$
[NC]
RewriteRule \.(gif|jpg)$ - [F]
Czasem zdarza się, że statystyki na serwerze oraz na zew serwerze zupełnie się
różnią. Warto by sprawdzić czy przypadkiem do naszych obrazków nie ma
hotlinkowania, które sprawia, że trafik jest większy a statystyki kłamią. Te
pare linijek wyżej rozwiążą nasz problem. Można też zamiast bronić użycia
hotlinkowania poprostu przenieść użytkownika (przeglądarke) do innego obrazka.
Kod:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER}
!^http://(www\.)?twoja-strona.pl/.*$ [NC]
RewriteRule \.(gif|jpg)$ http://www.twoja-strona.pl/hotlink.gif
[R,L]
IndexIgnore *.gif *.jpg
Czasem byśmy chcieli aby apache nie wylistował wszystkich plików. Ta linia
odznaczy nam te, których nie chcemy. Przykład jest na plikach o rozszerzeniach
jpg i gif
Trzymasz konfiguracje w pliku config.inc i innych ? Warto by je
zabezpieczyć aby przypadkiem nikt nie wykradł haseł. Można to zrobić dodając
poniższą linię do naszego pliczku. Komenda ta powoduje, że tylko skrypty i
zalogowany użytkownik może podglądać te pliczki.
deny from
all
A może jednak chcesz zablokować dostęp do pliczków dla danej osoby ? Co
prawda ta metoda jest mało skuteczna, bo opiera się o ip, które w końcu można
zmienić ale to zawsze coś. Po from wprowadzamy ip lub zakres
ip(000.000.000.000-000.000.000.000 , możesz też wprowadzać kilka początkowych
wartości ip np 233.123-23.32 lub samo 23.33)
deny from
000.000.000.000
Skoro już zablokowaliśmy dostęp dla konkretnych ip (lub dla wszystkich
możliwych nr ip) warto by dodać wartości ip z pod, których dostęp będzie
możliwy. Można to zrobić podobnie jak w przypatku blokowania, wystarczy tylko,
żę wstawimy napis allow.
deny from
all
allow from 000.000.000.000
Czasem może zdarzyć się sytuacja, że zmieniliśmy serwer lub folder(lub plik),
który jest jeszcze zaindeksowany w wyszukiwarkach znajduje się w innym miejscu.
W takim przypadku warto pomyśleć o przekierowaniu, które można zrobić tak:
Redirect /scizka_do_pliku_lub_folderu
[ www ]
Poniższy wpis:
AuthName "Section
Name"
AuthType Basic
AuthUserFile /scizka/do/.htpasswd
Require valid-user
powoduje ustawienie hasła dostępu dla danego folderu. Section Name zastępujemy
naszym komunikatem, a /scizka/do/.htpasswd sciezka do pliku .htpasswd, w ktorym
przechowywane są hasła.
Hasła przechowuje się w formacie:
login:haslo
Jeśli chcesz możesz dodać kilka userów (poprostu dodajesz kolejne linijki z "login:haslo".
Pamiętaj, że hasło musi być zakodowane.
Do tego celu użyj funkcji crypt z php
[ www ]
Kod:
AuthName "Section
Name"
<?php
echo
crypt('haslo',CRYPT_STD_DES);
?>
Dostęp tylko dla użytkowników mających ip: 192.45.111.222
Czasem warto ustawić dostęp tylko dla wybranych użytkowników z pliku z
hasłami. W takim przypadku wystarczy zastosować ten przykład:
AuthName "Section
Name"
Access allow all users marek jacek
Z czasem w naszym pliku z hasłami może znajdować się bardzo dużo osób
podzielonych na grupy. W takim przypadku warto określić, które grupy
użytkowników mają dostęp do tego folderu.
AuthName "Section
Name"
Access allow all groups lolki
Czasem nie wystarcza podanie hasła i loginu czy należenie do odpowiedniej
grupy. Czasem warto jeszcze bardziej ograniczyć dostęp w takim przypadku
można oprzeć się o numer ip:
AuthName "Section
Name"
Access allow 192.45.111.222
Ciekawą funkcją serwera apache jest możliwość listowania plików w katalogu.
W dobrych rękach można dzięki takim listowaniom tworzyć całe strony. Ale za tem
jak zmienić wygląd takiego listowania. Można to zrobić w taki sposób:
Tworzymy w głównym katalogu 2 pliczki README.HTML i HEADER.HTML które
odpowiednio odpowiadają za góre(HEADER.HTML) i dół(README.HTML). Czemu takie
nazwy ? Ponieważ przy listowaniu są one domyślnie wyłączone z listowania. Po za
tym tak już się przyjeło. W tych pliczkach możemy określić style czcionki itp
dla naszych stron, a także po pewnej modyfikacji wrzócić kod php lub inny. Oto
linijka odpowiadająca za to:
HeaderName
/HEADER.HTML
ReadmeName /README.HTML
Czasem chcielibyśmy stworzyć np dynamiczny baner lub wykonywać kod php w
plikach z innym rozszerzeniem. W takich przypadkach może okazać się pomocny ten
przykład, który to ustawia wykonywanie kodu php w plikach jpg. Pamiętaj, aby po
dodaniu tej linijki w tym samym katalogu nie przechowywac grafiki z
rozszerzeniem jpg
AddType
application/x-httpd-php .jpg
Czasem SSI jest domyślnie wyłączone, ten wpis to zmieni.
AddType
text/html .shtml
AddHandler server-parsed .shtml
Chciałbyś zmienić nazwę domyślnego pliku(np. index.php, index.html),
który jest wyświetlany jeśli nie podasz żadnego konkretnego pliczku ? Nic
trudnego wystarczy ten wpis. W nim decydujemy jaki plik ma być załadowany gdy
nie jest podany konkretny plik. Pamiętaj, że kolejność ma znaczenie. Ponieważ
jak nie będzie istniał jeden plik to serwer sprawdzi czy kolejny na liście
istnieje, jeśli tak to go zaladuje. Oto ten przykład:
DirectoryIndex plik.html abc.def
Poniższy przykład ustawia wartość mime (jest to rozszerzenie, które
pobiera przeglądarka, następnie decyduje jaki program je obsługuje i uruchamia
go) dla danego rozszerzenia plików w danym katalogu (można określić dla
konkretnego pliku)
:Location /*.muzyka
SetMime audio/mpeg
Czasem zdarza się, że administrator zapomniał zdefiniować typy mime...
trzeba więc jakoś sobie radzić, oto lista domyślnych mime (uzupełniona nieco
przezemnie:
AddType application/andrew-inset ez
AddType application/mac-binhex40 hqx
AddType application/mac-compactpro cpt
AddType application/msword doc
AddType application/octet-stream bin
AddType application/octet-stream dms
AddType application/octet-stream lha
AddType application/octet-stream lzh
AddType application/octet-stream exe
AddType application/octet-stream class
AddType application/octet-stream so
AddType application/octet-stream dll
AddType application/octet-stream dmg
AddType application/oda oda
AddType application/pdf pdf
AddType application/postscript ai
AddType application/postscript eps
AddType application/postscript ps
AddType application/rtf rtf
AddType application/smil smi
AddType application/smil smil
AddType application/vnd.mif mif
AddType application/vnd.ms-excel xls
AddType application/vnd.ms-powerpoint ppt
AddType application/vnd.wap.wbxml wbxml
AddType application/vnd.wap.wmlc wmlc
AddType application/vnd.wap.wmlscriptc
wmlsc
AddType application/x-bcpio bcpio
AddType application/x-cdlink vcd
AddType application/x-chess-pgn pgn
AddType application/x-cpio cpio
AddType application/x-csh csh
AddType application/x-director dcr
AddType application/x-director dir
AddType application/x-director dxr
AddType application/x-dvi dvi
AddType application/x-futuresplash spl
AddType application/x-gtar gtar
AddType application/x-hdf hdf
AddType application/x-javascript js
AddType application/x-java-jnlp-file jnlp
AddType application/x-koan skp
AddType application/x-koan skd
AddType application/x-koan skt
AddType application/x-koan skm
AddType application/x-latex latex
AddType application/x-netcdf nc
AddType application/x-netcdf cdf
AddType application/x-sh sh
AddType application/x-shar shar
AddType application/x-shockwave-flash swf
AddType application/x-stuffit sit
AddType application/x-sv4cpio sv4cpio
AddType application/x-sv4crc sv4crc
AddType application/x-tar tar
AddType application/x-tcl tcl
AddType application/x-tex tex
AddType application/x-texinfo texinfo
AddType application/x-texinfo texi
AddType application/x-troff t
AddType application/x-troff tr
AddType application/x-troff roff
AddType application/x-troff-man man
AddType application/x-troff-me me
AddType application/x-troff-ms ms
AddType application/x-ustar ustar
AddType application/x-wais-source src
AddType application/xhtml+xml xhtm
AddType application/xhtml+xml xht
AddType application/rar rar
AddType application/zip zip
AddType audio/basic au
AddType audio/basic snd
AddType audio/midi mid
AddType audio/midi midi
AddType audio/midi kar
AddType audio/mpeg mpga
AddType audio/mpeg mp2
AddType audio/mpeg mp3
AddType audio/mpeg m4a
AddType audio/x-aiff aif
AddType audio/x-aiff aiff
AddType audio/x-aiff aifc
AddType audio/x-mpegurl m3u
AddType audio/x-pn-realaudio ram
AddType audio/x-pn-realaudio rm
AddType audio/x-pn-realaudio-plugin rpm
AddType audio/x-realaudio ra
AddType audio/x-scpls pls
AddType audio/x-wav wav
AddType chemical/x-pdb pdb
AddType chemical/x-pdb xyz
AddType image/bmp bmp
AddType image/gif gif
AddType image/ief ief
AddType image/jpeg jpeg
AddType image/jpeg jpg
AddType image/jpeg jpe
AddType image/jp2 jp2
AddType image/pict pict
AddType image/pict pic
AddType image/pict pct
AddType image/png png
AddType image/tiff tiff
AddType image/tiff tif
AddType image/vnd.djvu djvu
AddType image/vnd.djvu djv
AddType image/vnd.wap.wbmp wbmp
AddType image/x-cmu-raster ras
AddType image/x-macpaint pntg
AddType image/x-macpaint pnt
AddType image/x-macpaint mac
AddType image/x-portable-anymap pnm
AddType image/x-portable-bitmap pbm
AddType image/x-portable-graymap pgm
AddType image/x-portable-pixmap ppm
AddType image/x-quicktime qti
AddType image/x-quicktime qtif
AddType image/x-rgb rgb
AddType image/x-xbitmap xbm
AddType image/x-xpixmap xpm
AddType image/x-xwindowdump xwd
AddType model/iges igs
AddType model/iges iges
AddType model/mesh msh
AddType model/mesh mesh
AddType model/mesh silo
AddType model/vrml wrl
AddType model/vrml vrml
AddType text/css css
AddType text/html html
AddType text/html htm
AddType text/plain asc
AddType text/plain txt
AddType text/richtext rtx
AddType text/rtf rtf
AddType text/sgml sgml
AddType text/sgml sgm
AddType text/tab-separated-values tsv
AddType text/vnd.wap.wml wml
AddType text/vnd.wap.wmlscript wmls
AddType text/x-setext etx
AddType text/xml xml
AddType text/xml xsl
AddType video/mpeg mpeg
AddType video/mpeg mpg
AddType video/mpeg mpe
AddType video/mp4 mp4
AddType video/quicktime qt
AddType video/quicktime mov
AddType video/vnd.mpegurl mxu
AddType video/x-dv dv
AddType video/x-dv dif
AddType video/x-msvideo avi
AddType video/x-sgi-movie movie
AddType x-conference/x-cooltalk ice
AddType text/html shtml
AddType application/x-tar tgz
AddType application/x-httpd-php3 php3
AddType application/x-httpd-php3-source
phps
AddType application/x-httpd-php php
AddType application/x-httpd-php-source
phps
AddType application/x-quicktimeplayer qtl
Poniższy wpis:
<Files .htaccess>
order allow,deny
deny from all
</Files>
ustawia parametry dla danego pliku (jeśli wstawimy * to plików). W tym
przypadku ustawiamy brak dostępu dla osób, które chciałyby podejrzeć nasze
pliczki .htaccess. Jest to bardzo ważne ponieważ jak bronimy dostępu do jakiegoś
pliku lub katalogu hasła mogą być przechowywane w takich pliczkach, a co za tym
idzie podglądane przez przeglądarke (przy odpowiednich ustawieniach serwera),
dlatego warto to zmienić.
Czasem zdarza się, że statystyki na serwerze oraz na zew serwerze zupełnie
się różnią. Warto by sprawdzić czy przypadkiem do naszych obrazków nie ma
hotlinkowania, które sprawia, że trafik jest większy a statystyki kłamią. Te
pare linijek niżej rozwiążą nasz problem:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?twoja-strona.pl/.*$
[NC]
RewriteRule .(gif|jpg)$ - [F]
Można też zamiast bronić użycia hotlinkowania poprostu przenieść użytkownika (przeglądarke)
do innego obrazka.
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?twoja-strona.pl/.*$
[NC]
RewriteRule
.(gif|jpg)$
[ www ] [R,L]
Czasem byśmy chcieli aby apache nie wylistował wszystkich plików.Ta linia
odznaczy nam te, których nie chcemy:
IndexIgnore *.gif *.jpg
Przykład jest na plikach o rozszerzeniach jpg i gif. To tylko przykład ten wpis
powinien być bardziej przydatny:
IndexIgnore .??* *~ *# readme.html header.html HEADER README RCS CVS *,v *,t .DS_Store
*.log
Czy przy automatycznym listowaniu plików w danym folderze pokazuje się wew.
błąd serwera (500), a może brak dostępu (403). Ta linijka powinna to
załatwić:
Options +Indexes
Czasem warto samemu skonfigurować odpowiednie ikonki i opisy do danych
rozszerzeń plików na serwerze. Ten kawalek kodu powinien Ci pomóc.
Zwróć uwagę na jedną z pierwszych lini:
IndexOptions FancyIndexing IconHeight=16 IconWidth=16 NameWidth=30
DescriptionWidth=50
Oszczędza nam ona sporo miejsca przy listowaniu, ponieważ zmniejsza ikonki do
wielkości 16x16, opis do 50 znakow a nazwe pliku do 30.
Jeśli zauważymy, że jakiegoś obrazka nie ma w domyślnej ścieżce na serwerze to
poprostu odznacz te rozszerzenie komentarzem (#), wtedy apache pobierze domyślną
ikonkę dla tego rozszerzenia.
Options +Indexes
+MultiViews +FollowSymlinks
<IfModule mod_autoindex.c>
IndexOptions FancyIndexing IconHeight=16
IconWidth=16 NameWidth=30 DescriptionWidth=50
# wykonywalne
AddIcon /icons/small/exe.gif .exe
AddIcon /icons/small/binary.gif .bin .exe
.cgi
AddDescription "Pliki wykonywalne
windowsa" .exe
AddDescription "SSI" .cgi
AddIcon /icons/small/binhex.gif .hqx
#archiwa
AddDescription "archiwum Mac binhex" .hqx
AddIcon /icons/small/world2.gif .wrl .wrl.gz
.vrml .vrm .iv
AddDescription "wirtualne pliki" .wrl .wrl.gz
.vrml .vrm .iv
AddIcon /icons/small/compressed.gif .bz
.bz2 .gz .ace .arj .tar.gz .tgz
AddIcon /icons/small/tar.gif .tar
AddIcon /icons/small/zip.gif .Z .z .zip
AddIcon /icons/small/rar.gif .rar
AddIcon /icons/small/sit.gif .sit .sitx
AddDescription "GZIP skompresowane
archiwum tar" .tgz .tar.gz
AddDescription "archiwum tar" .tar
AddDescription "kompresja GZIP" .Z .z .gz
.zip
AddDescription "archiwum zip" .zip
AddDescription "archiwum rar" .rar
AddDescription "archiwum bzip" .bz2 .bz
AddDescription "archiwum stuffit" .sit
AddDescription "archiwum stuffitX" .sitx
AddDescription "archiwum ace" .ace
AddDescription "archiwum arj" .arj
# obrazki
AddIcon /icons/small/gif.gif .gif
AddDescription "obraz jpg" .jpg .jpeg
AddDescription "obraz gif" .gif
AddDescription "portable network graphic
(yay!)" .png
AddIcon /icons/small/jpg.gif .jpg .jpeg .png
AddIcon /icons/small/a.gif .ps .ai .eps
AddDescription "obrazki wektorowe" .ps .ai
.eps
#inne
AddIcon /icons/small/layout.gif .html .shtml
.htm .css .dtd .xml .chm
AddDescription "hypertext" .html .shtml .htm
AddDescription "styl css" .css
AddDescription "definicja DocType" .dtd
AddDescription "extensible markup
language" .xml
AddDescription "skompresowany plikpomocy
win32" .chm
AddIcon /icons/small/pdf.gif .pdf
AddDescription "dokument adobe" .pdf
AddIcon /icons/small/text.gif .txt
AddDescription "czysty tekst" .txt
AddIcon /icons/small/nfo.gif .diz .nfo .faq
.readme .me
AddDescription "informacja o pliku" .diz
.nfo .faq .readme .me
AddIcon /icons/small/man.gif .man
AddDescription "unix man page" .man
AddIcon /icons/small/eml.gif .eml .mbox
AddDescription "zasoby email" .eml .mbox
AddIcon /icons/small/nfo.gif .doc
AddDescription "dokument worda" .doc
AddIcon /icons/small/pl.gif .pl
AddDescription "skrypt pearla" .pl
AddIcon /icons/small/py.gif .py
AddDescription "skrypt pythona" .py
AddIcon /icons/small/php.gif .php .php3
.php4 .phps
AddDescription "skrypt php" .php .php3
.php4
AddDescription "źródło skryptu php" .phps
AddIcon /icons/small/f.gif .for .f
AddDescription "dunno what for" .for
AddIcon /icons/small/dvi.gif .dvi
AddDescription "plik dvi" .dvi
AddIcon /icons/small/uu.gif .uu .uue
AddDescription "7-bit uu encoded (news)
file" .uu .uue
AddIcon /icons/small/script.gif .conf .sh
.shar .csh .ksh .tcl .command .h .term
AddIcon /icons/small/js.gif .js .java
AddDescription "skrypt (czysty tekst)" .uu
.uue
AddDescription "javascript" .js
AddDescription "java code" .java
AddDescription "skrypt shella unixa" .sh
.shar .csh .ksh .command
AddDescription "skrypt shella OS Xa" .command
AddDescription "plik konfiguracyjny" .conf
AddDescription "terminal Mac OS X" .term
Dodane przez Pallas
dnia maj 13 2008 02:16:22
0 Komentarzy ~
1452 Czytań
|