| Autor | Správa |
JanoF
 Správca fóra
 Založený: 01.05.2005 Príspevky: 8736 Bydlisko: Bratislava Vek: 27
 | Zaslal: So 03.09.05 22:56 |   |
.htaccess a .htpasswd
Jednoduchy recept na .htaccess
Takze najprv sa uistime ci mame v konfiguracnom subore pre apache povolenu instrukciu AllowOverride.
Co dokaze .htaccess?
- Nastavit vlastne chybove stranky
- Zabanovanie IP adres
- Obmedzenie pristupov do niektorych casti stranky
- Prepis dynamickych adres v php na staticke html
- A este dost dalsich veci ktore neviem ;-)
Chybove stranky
do .htaccess pridame:
ErrorDocument 404 /chyba.html
znamena to ze pre serverovu chybu 404 sa nam nacita nas vlastna stranka chyba.html
zoznam errorov:
400 Bad Request
401 Authorization Required
403 Forbidden
404 Not Found
500 Internal Server Error
Zabanovanie IP adres
do .htaccess pridame:
deny from ip adresa >> napr. >> deny from 192.151.464.188 tymto prikladom sme zablokovali pristup na stranku z ip adresy 192.151.464.188 mozme ale tiez zabanovat naraz vacsi pocet adres >> napr. >> deny from 192.151 tymto prikladom zablokujeme pristup pre vsetky ip adresy ktore zacinaju 192.151 opakom deny je prikaz allow
napr.>> allow from 192.151.45.97
znamena to ze ak sme predtym zablokovali adresy ktore zacinaju na 198.151 tak pre ip adresu 192.151.45.97 bude udelena vynimka
este tu je jedna moznot a to je "deny from all" ktora zablokuje vsetky ip adresy
Vypis adresara na obrazovku
Najpr si zistime ci je subore httpd.conf nastavena direktiva Options Indexes
pokial tam je tak ak sa v adresari nenachadza subor index.html (index.php ....) nastane vypis adresara na obrazoku. Toto mozme obmedzit ked do .htaccess pridame "Options -Indexes" ak naopak chceme aby nastal vypis a v httpd.conf sa hodnota
options indexes nenachadza tak do htaccess pridame "Options +Indexes"
Prepis dynamickych adries
Najprv zistime ci na servere Apache je nainstalovany modul mod_rewrite
ak tam je tak mozme zacat s prepisovanim
# podstrcenie stranky
RewriteEngine on
RewriteRule zadana-stranka\.html podstrcena-stranka.html
TAKZE: chcem aby klient po zadani stranky nic.html dostal stranku nieco.html >>
ked do browseru napise www.nejakadomena.com/nic.html dostane pritom stranku nieco.html
RewriteEngine on
RewriteRule nic\.html nieco.html
Najvacsou vyhodou je moznost vyuzit regulerne vyrazy:
TAKZE chcem aby vsetky stranky, ktore vyzeraju takto index.php?action=nieco vyzerali ako nieco.html do .htaccess pridame:
RewriteEngine on
RewriteRule ^(.*)\.html index.php?action=$1
vysvetlenie: znak ^(.*) sa nahradi za $1
myslim ze na www.root.cz sa dozviete viac o regulernych vyrazoch
Zaheslovanie adresara pomocou .htpasswd
Tejto problematike je venovana vlastna stranka .htpasswd.html
Na zeheslovanie adresara budeme potebovat 2 subory: .htaccess a subor, kde budeme mat ulozene svoje hesla .htpasswd.
Vytvorenie suboru .htaccess
Tento subor musime umiestnit do adresara, ktory chceme zaheslovat.
Nase .htaccess bude obsahovat:
AuthUserFile /absolutna/cesta/k/vasmu/suboru/.htpasswd
AuthGroupFile /dev/null
AuthName "Sukromne data"
AuthType Basic
require valid-user
AuthUserFile >> urcuje absolutnu cestu k suboru .htpasswd. Ako zistit absoulutnu adresu popisem neskor
AuthGroupFile >> obsahuje cestu k suboru, ktory obsahuje skupiny uzivatelov ak skupiny nemame dopnime /dev/null
AuthName >> nazov zabezpecenej oblasti mozme tam napisat cokolvek do " ".
AuthType >> typ autorizacie, tu pouzivame Basic
require >> napiseme valid-user >> aby pristup k dolezitym suborom bol obmedzeny len pre uzivatelov definovanych v subore .htpasswd.
Vytvorenie suboru s heslami .htpasswd
Nas subor s heslami vyzera takto:
uzivatel1:zasifrovane heslo1
uzivatel2:zasifrovane heslo2
atd.
Hesla v subore .htpasswd su kodovane pomocou php funkcie crypt. Na zakodovanie hesla pouzijeme jednoduchy php script crypt.php pomocou ktoreho sa name tiez podari zistit absolutnu cestu potrebnu pre .htpasswd:
| kód: | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
<meta name="generator" content="PSPad editor, www.pspad.com">
<title>PHP script pre zasifrovanie hesla do .htpasswd</title>
</head>
<body>
<form action="<?php echo $PHP_SELF ?>" method="post">
Heslo, ktore chcem zasifrovat:
<br /><input type=text name=heslo />
<input type="submit" name="submit" value=">>zakoduj!<<" />
</form>
<?php
if (isset ($_POST['submit'])) {
echo '<span style="background-color:lightgreen;">'."\n";
echo ' Heslo - '.$_POST['heslo']."\n";
echo '</span>: '."\n";
echo '<span style="background-color:lightblue;">'."\n";
echo "\t".crypt ($_POST['heslo'])."\n";
echo '</span>'."\n";
}
echo '<br /><br />$_SERVER[\'DOCUMENT_ROOT\'] : <strong>'."\n";
echo $_SERVER['DOCUMENT_ROOT'].'</strong>'."\n";
?>
</body>
</html> |
pomocou $_SERVER['DOCUMENT_ROOT'] mozeme ziskat absolutnu adresu. |
Naposledy upravil JanoF dňa Ne 04.09.05 20:09, celkom upravené 1 krát. | |
       |
 |
2xxx
 Užívateľ
 Založený: 17.08.2007 Príspevky: 37
 | Zaslal: So 18.08.07 11:11 |   |
ono mi to nejde ani jedno [/list] |
| |
  |
 |
javo
 Užívateľ
 Založený: 02.07.2006 Príspevky: 1696 Bydlisko: Slovakia - Námestovo
 | Zaslal: So 18.08.07 12:00 |   |
| 2xxx napísal: | ono mi to nejde ani jedno [/list] |
co presne ti nejde?
//dat si audiotrackov avatar je kusok divny napad ne? |
_________________ Zivot je jednoduchy , staci sa rozhodnut a neobzerat sa spat. Poriadok je pre blbcov, inteligent zvlada chaos. | |
  |
 |
2xxx
 Užívateľ
 Založený: 17.08.2007 Príspevky: 37
 | Zaslal: So 18.08.07 13:27 |   |
no vsetko.........ked to skusam mi nejde ani jedno ani to zasifrofanie ani to blokovanie ip adresi |
| |
  |
 |
javo
 Užívateľ
 Založený: 02.07.2006 Príspevky: 1696 Bydlisko: Slovakia - Námestovo
 | Zaslal: So 18.08.07 13:39 |   |
mas spravne vytvoreny subor .htaccess? aj s bodkov? viem ze na windows systemoch sa to ma vytvarat nejako inak, skus si o tom neco najst na google ako vytvorit .htaccess na win. |
_________________ Zivot je jednoduchy , staci sa rozhodnut a neobzerat sa spat. Poriadok je pre blbcov, inteligent zvlada chaos. | |
  |
 |
Numline1
 Zablokovaný užívateľ
 Založený: 01.10.2006 Príspevky: 1971
 | Zaslal: So 18.08.07 13:46 |   |
Mas na servri povoleny htaccess ? |
| |
  |
 |
2xxx
 Užívateľ
 Založený: 17.08.2007 Príspevky: 37
 | Zaslal: So 18.08.07 13:52 |   |
|
  |
 |
Flety
 Užívateľ
 Založený: 26.11.2006 Príspevky: 4109 Bydlisko: HE(Humenne) - KE Vek: 18
 | Zaslal: So 18.08.07 15:48 |   |
na wine sa to da tak obist ta bodky ze si spravis bez bodky aj bez pripony a na ftp si to premenujes aj s bodkou |
_________________ Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5K CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 5-5-5-12 GPU: Saphire ATi Radeon HD5850 Toxic HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: Fortron Epsilon 700W LCD: LG L226W 1680x1050 2ms | |
       |
 |
suchy
 Čestný člen
 Založený: 17.10.2006 Príspevky: 1770
 | Zaslal: So 18.08.07 16:16 |   |
neviem o akych problemoch na wine hovorite. v zivote som sa s tym nestretol. pouzivam xp. |
_________________ A Real Programmer might or might not know his wife's name. He does, however, know the entire ASCII code table. | |
     |
 |
Numline1
 Zablokovaný užívateľ
 Založený: 01.10.2006 Príspevky: 1971
 | Zaslal: So 18.08.07 16:33 |   |
Asi taky ze Win ti neulozi subor .htaccess, pretoze .htaccess berie ako priponu ale nikde nevidi nazov ... |
| |
  |
 |
suchy
 Čestný člen
 Založený: 17.10.2006 Príspevky: 1770
 | Zaslal: So 18.08.07 17:08 |   |
no ja som napisal ze v zivote som sa s tym nestretol. mne to funguje normalne. neviem ake winy pouzivate vy. asi tolko som tym chcel. |
_________________ A Real Programmer might or might not know his wife's name. He does, however, know the entire ASCII code table. | |
     |
 |
javo
 Užívateľ
 Založený: 02.07.2006 Príspevky: 1696 Bydlisko: Slovakia - Námestovo
 | Zaslal: So 18.08.07 19:25 |   |
| suchy napísal: | | no ja som napisal ze v zivote som sa s tym nestretol. mne to funguje normalne. neviem ake winy pouzivate vy. asi tolko som tym chcel. |
ja som sa s tym v zivote nestretol , sice som az tak moc .htaccessov pod win nevytvaral , ale cital som clanok ze to moze robit u niekoho problemy,
no a potom mi to aj na tomto fore niekto potvrdil, uz je to davno , newim kto |
_________________ Zivot je jednoduchy , staci sa rozhodnut a neobzerat sa spat. Poriadok je pre blbcov, inteligent zvlada chaos. | |
  |
 |
p360t
 Skúsený užívateľ
 Založený: 30.05.2006 Príspevky: 1775 Bydlisko: BA - EASTSIDE
 | Zaslal: Ne 19.08.07 10:55 |   |
Ak chcete vo Windows spraviť súbor .htaccess, tak najjednoduchší spôsob vedie cez nejaký ten textový editor a potom Uložiť ako -> Názov súboru -> ".htaccess". Jednoducho tam treba pri ukladaní dať tie úvodzovky. |
_________________ [quote="A. S. Tanenbaum"]The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.[/quote] | |
    |
 |
qacer
 Užívateľ
 Založený: 29.12.2005 Príspevky: 540 Bydlisko: 127.0.0.1 (Pov. Bys.)
 | Zaslal: Ne 19.08.07 16:19 |   |
treba mat zapnuty pri prepisovani adries mod rewrite
odporucam VertrigoServ ( http://vertrigo.sourceforge.net/ )...dloho som to predtym nemohol spojazdnit ael teraz uz ide secko
a je tam aktualna vezia apache, php, mysql, phpmyadmin a mnoho dalsich.
A k tomu sa velmi jednoducho konfiguruje  |
_________________ "Kde končí hiphop, začína IQ." | |
     |
 |
jancek
 Užívateľ
 Založený: 24.08.2007 Príspevky: 1
 | Zaslal: Pi 24.08.07 14:43 |   |
Ahojte, neviete mi niekto poradit, ako by som spravil toto? Potrebujem, aby htaccess zahesloval priecinok, bolo vytvorenych niekolko userov (dotialto by som to mal zvladnut), a potom, ako sa user uspesne prihlasi, aby bol presmerovany na specificku stranku v zavislosti od jeho mena. Cital som tu: http://www.webmasterworld.com/forum92/5482.htm ze sa to ma robit cez REMOTE_USER ale nejako som to nikde nemohol najst napisane pre lajika. Dakujem |
| |
  |
 |
|