❗️Toto je původní verze internetového fóra ISPforum.cz do února 2020 bez možnosti registrace nových uživatelů. Aktivní verzi fóra naleznete na adrese https://telekomunikace.cz

Apache - default document

Příspěvky, které nespadají do žádného z vytvořených fór.
Rudolf Dvořák
Příspěvky: 421
Registrován: 15 years ago
antispam: Ano
Bydliště: Czech Republic
Kontaktovat uživatele:

Apache - default document

Příspěvekod Rudolf Dvořák » 11 years ago

Zdravím mám následující config v apachi na serveru

Kód: Vybrat vše

<VirtualHost *:80>
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www

        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>

        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                Order allow,deny
        </Directory>

        <Directory /var/www/api/public>
                Allow from all
        </Directory>
        <Directory /var/www/cods/jquery>
                Allow from all
        </Directory>
        <Directory /var/www/css>
                Allow from all
        </Directory>
        <Directory /var/www/img>
                Allow from all
        </Directory>

        <Files "index.php">
                Allow from all
        </Files>
        <Files "index2.php">
                Allow from all
        </Files>
        <Files "login.php">
                Allow from all
        </Files>
        <Files "logout.php">
                Allow from all
        </Files>
        <Files "favicon.ico">
                Allow from all
        </Files>




        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>
        ErrorLog ${APACHE_LOG_DIR}/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

<VirtualHost *:88>
        DocumentRoot /var/www
</VirtualHost>



a potřebuju aby když zadam http://adresa.tld mi sel apache na http://adresa.tld/index.php

normálně tohlo funguje, ale teď jsem potřeboval povolit přítup jenom do zadaných souborů a nevím pořád jak dál
pro zkušený apachisty to nebude problém a je to triviální ale já na to nemuzu uz dve hodiny prijit

R.
0 x

Dalibor Toman
Příspěvky: 1246
Registrován: 13 years ago

Příspěvekod Dalibor Toman » 11 years ago

Rudolf Dvořák píše:Zdravím mám následující config v apachi na serveru
[code]

a potřebuju aby když zadam http://adresa.tld mi sel apache na http://adresa.tld/index.php

normálně tohlo funguje, ale teď jsem potřeboval povolit přítup jenom do zadaných souborů a nevím pořád jak dál
pro zkušený apachisty to nebude problém a je to triviální ale já na to nemuzu uz dve hodiny prijit

R.


virtualni server musi vedet jak se jmenuje - jinak nemuze poznat na jake hostname v URL ma vlastne reagovat. IMHO Ti tam chybi direktiva

ServerName adresa.tld
0 x

Majklik
Příspěvky: 1949
Registrován: 14 years ago

Příspěvekod Majklik » 11 years ago

Má to jako defualt virtual server, takže jakákoliv doména na to padne, ale nemá nastavo, co se má zobrazovat, když dá jen odkaz na adresář. Chybí mi tam:
DirectoryIndex index.html index.php
0 x

Dalibor Toman
Příspěvky: 1246
Registrován: 13 years ago

Příspěvekod Dalibor Toman » 11 years ago

Majklik píše:Má to jako defualt virtual server, takže jakákoliv doména na to padne, ale nemá nastavo, co se má zobrazovat, když dá jen odkaz na adresář. Chybí mi tam:
DirectoryIndex index.html index.php


to je obvykle definovane z hlavnim konfiguraku. Ale pokud potrebuje nacist index.php tak si ho tam musi doplnit (bud do hlavni cfg nebo do toho virtualu ci adresaru)
0 x

Rudolf Dvořák
Příspěvky: 421
Registrován: 15 years ago
antispam: Ano
Bydliště: Czech Republic
Kontaktovat uživatele:

Příspěvekod Rudolf Dvořák » 11 years ago

Chodim do toho pres ip adresu, jinak pokud pridam do directory /var/www allow from all tak to funguje jinak ne

Jinak v logu se pise:

Kód: Vybrat vše

[Sat Dec 21 18:57:46 2013] [error] [client 192.168.1.192] client denied by server configuration: /var/www/
0 x

tom-tom
Příspěvky: 1089
Registrován: 20 years ago

Příspěvekod tom-tom » 11 years ago

DirectoryIndex nic nepodstrkuje, je to takový "playlist", který říká, jaké soubory a v jakém pořadí se mají hledat v adresáři, pokud za URL není název konkrétního souboru. Ten se pak zobrazí jako výchozí.
Pokud je

Kód: Vybrat vše

DirectoryIndex index.html index.htm index.php
a v adresáři jsou fyzicky všechny 3 soubory, pošle apache index.html, protože je v seznamu jako první.
Když nenajde v adresáři ani jeden, chová se apache mj. v závislosti na nastavení Indexes > pošle do prohlížeče list souborů, nebo -Indexes > zobrazí jen "Forbidden..." nemáte oprávnění.

Takže konfig apache bych nechal

Kód: Vybrat vše

<Directory /var/www/>
        Options -Indexes FollowSymLinks MultiViews
        Order allow,deny
        AllowOverride none
        Allow from all
 </Directory>
Direktivy directory na podadresáře a files, pokud mají nějaký hlubší smysl, bych nechal do .htaccess, pomocí rewrite rules ošetřil co je přístupné a zbytek přesměřoval na nějaký konkrétní html prázdný soubor, 404, nebo nějaké vlastní zobrazení zamítnutí přístupu.
0 x
T-T