Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Obecná podpora => Téma založeno: cabryk 17 Ledna 2017, 14:37:49

Název: ubuntu webserver/cache
Přispěvatel: cabryk 17 Ledna 2017, 14:37:49
Dobrý den.

Dostal jsem za úkol vystavit webovou stránku. Poběží virtuálně na ubuntu serveru. Html, css, php ani MySql nebude problém. Vidím ji u sebe na http://182.1.59.22/?a=a Narazil jsem na potíž u Apache.

Do /var/www/ jsem přidal soubor index.php

Když jsem se ho pokusil upravit, nejde to. Asi se bude "kešovat"

Zkusil jsem tedy:

cd /var/www/
ls -asl
touch /var/www/.htaccess
chown apache /var/www/.htaccess
vi /var/www/.htaccess


A do něj
<FilesMatch "\.(html|htm|js|css|php)>
FileETag None
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</FilesMatch>


Na slepo jsem zkusil i:

chmod a+x /var/www/index.php
chown ubuntu /var/www/.htaccess
sudo service apache2 restart


V nano /etc/apache2/apache2.conf
jsem nechal:


<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>


Přiznám se, že s Linuxem si netykáme, ale s google snad jsme na tom lépe. Bohužel musím odfiltrovat ostatní Linux distribuce a to se hledá těžko.

Moje prosba zní: Jak postupovat, abych mohl používat tento server pro webovou stránku. Vše dělám jako su.

Díky



Název: Re:ubuntu webserver/cache
Přispěvatel: navsteva 17 Ledna 2017, 15:29:04
Dobrý den.

Dostal jsem za úkol vystavit webovou stránku. Poběží virtuálně na ubuntu serveru. Html, css, php ani MySql nebude problém. Vidím ji u sebe na http://182.1.59.22/?a=a Narazil jsem na potíž u Apache.

Do /var/www/ jsem přidal soubor index.php

Když jsem se ho pokusil upravit, nejde to.

Co konkrétně nejde? Upravit ten soubor? V čem a jak ho upravuješ? Pod jakým uživatelem? Má uživatel právo k zápisu?

Ve webovém prohlížeči to opravdu upravit nepůjde.
Název: Re:ubuntu webserver/cache
Přispěvatel: cabryk 17 Ledna 2017, 15:38:50
Ve webovém prohlížeči to opravdu upravit nepůjde.

webovou stránku nedělám poprvé...

Pod jakým uživatelem? Má uživatel právo k zápisu?

Vše dělám jako su. Práva mám.

Upravit ten soubor?

Když upravím jiný soubor, je mi to k ničemu. (pomineme-li různé include, které tam nejsou)

V čem a jak ho upravuješ?

sudo nano /var/www/index.php


Co konkrétně nejde?

uložím, uloží se, ale html stránka (http://182.1.59.22/?a=a , v browseru) se nezaktualizuje (ani po [ctrl]+[f5] ) podle obsahu souboru..
Název: Re:ubuntu webserver/cache
Přispěvatel: navsteva 17 Ledna 2017, 16:11:43
uložím, uloží se, ale html stránka (http://182.1.59.22/?a=a , v browseru) se nezaktualizuje (ani po [ctrl]+[f5] ) podle obsahu souboru..

A je to totožná webová stránka? Nemělo by to být http://182.1.59.22/index.php (http://182.1.59.22/index.php)?
Název: Re:ubuntu webserver/cache
Přispěvatel: cabryk 18 Ledna 2017, 08:48:38
Já nedělám web poprvé, ta odpoveď se netýká problému. Ale abych byl maximálně detailní, a vyloučil zbytečné reakce:
ve složce /var/www/ je jedniný soubor index.php, nejsou zde ani složky.

Po prvním uložení se mi soubor v prohlížeči zobrazil tak jak jsem jej uložil. Zjdenoduším to.. ten soubor obsahoval "a", v prohlížeči bylo "a". (to je ok)
Soubor jsem znovu otevřel a vidím tam "a" (to je strávně), poté edituji a měním obsah na "ab", uložím, znovu otevřu a vidím "ab" (to je správně). Ovevřu v prohlížeči a vidím stále "a" a to je špatně. Upravuji pouze jediný soubor, a to ten původní, a to na serveru - zdroji.

Jinak
http://182.1.59.22/?a=a
http://182.1.59.22/index.php?a=a
http://182.1.59.22/
http://182.1.59.22/index.php
http://182.1.59.22/#kotva
http://182.1.59.22/index.php#cokoliv
je ta samá stránka. Takže toto problém není! (rewrite rule nikde nepoužívám, konfiguraci jsem poslal v prvním příspěvku). Navíc i toto jsem zkoušel (projít všechny) parametr za stránkou se dá použít i proti kešování.



Název: Re:ubuntu webserver/cache
Přispěvatel: Petr Merlin Vaněček 18 Ledna 2017, 09:14:28
Tak nějak mi nepřijde, že by webserver až tak moc kešoval.
Rozhodně by se keš měla smazat při restartu serveru.

Co je v logu? Jak v access, tak v error?
Název: Re:ubuntu webserver/cache
Přispěvatel: beather 18 Ledna 2017, 10:04:13
jenom takova poznamka.. asi neni moc good psat zde rovnou IP adresu  ::)
Název: Re:ubuntu webserver/cache
Přispěvatel: navsteva 18 Ledna 2017, 11:56:56
jenom takova poznamka.. asi neni moc good psat zde rovnou IP adresu  ::)

Tak tu IP používají v lan, sice to není lankový rozsah, ale jejich věc, že používají v lan indonéskou ip adresu. Hamachi taky používá ip adresy, které někomu patří.
Název: Re:ubuntu webserver/cache
Přispěvatel: Petr Merlin Vaněček 18 Ledna 2017, 21:53:09
A co ty logy? Našlo se něco?
Název: Re:ubuntu webserver/cache
Přispěvatel: cabryk 19 Ledna 2017, 07:39:37
IP adresa je ve vniřní síti, navíc stroj jede virtuálně, je určený pouze na test, tedy irelevantní k nastíněnému problému.

Logy, tam jsou jen tyto údaje:

sudo nano /var/log/apache2/error.log
[Tue Jan 19 7:29:25.011790 2017] [mpm_prefork:notice] [pid 10385] AH00163: Apache/2.4.18 (Ubuntu) configured -- resuming normal operations
[Tue Jan 19 7:29:25.011819 2017] [core:notice] [pid 10385] AH00094: Command line: '/usr/sbin/apache2'


sudo nano /var/log/apache2/access.log
xxx.xxx.xxx.32 - - [19/Jan/2017:7:30:54 +0100] "GET /test/ HTTP/1.1" 401 726 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0"
- zkusil jsem soubor dát i do složky test, ale s odpovědí 404

V logách, tedy nic není. Zkusil jsem si nainstalovat phpmyadmin (kvůli "grafickému rozhraní") a to jede.

Zkusil jsem jinou instalaci (nový virtuální stroj s panenskou instalací Ubuntu serveru), bez problému upravuji, ale jsem ve složce /var/www/html.

Ta chyba asi bude v konfiguraci a cestě k souboru. Je jasné, že ji dělám já, ale zatím jsem ji nenašel.

Mimochodem soubor jsem i smazal a systém restartoval.. a vidím tam tu původní stránku.
Název: Re:ubuntu webserver/cache
Přispěvatel: Petr Merlin Vaněček 19 Ledna 2017, 08:46:31
No počkej, on Ti servíruje chybu 401 - Unauthorized, tj. pokud nebude provedena autorizace, klient si (asi) šáhne do své cache.
Název: Re:ubuntu webserver/cache
Přispěvatel: cabryk 19 Ledna 2017, 09:32:01
Já jsem si pročetl /etc/apache2/apache2.conf


#       /etc/apache2/
#       |-- apache2.conf
#       |       `--  ports.conf
#       |-- mods-enabled
#       |       |-- *.load
#       |       `-- *.conf
#       |-- conf-enabled
#       |       `-- *.conf
#       `-- sites-enabled
#               `-- *.conf


A ručně jsem upravoval sites-enabled a tam jsem nejspíš ten problém odhalil.. v cestě mi nesedělo lomítko (asi). Ještě to ověřím, ale mohlo by to být ono.
Název: Re:ubuntu webserver/cache
Přispěvatel: cabryk 19 Ledna 2017, 09:34:31
No počkej, on Ti servíruje chybu 401 - Unauthorized, tj. pokud nebude provedena autorizace, klient si (asi) šáhne do své cache.
Mylím, že by mě server vyhodil s tou chybou stejně jako 404 nebo 403, ale nešlel by do keše.

vypysovala by se takováto hláška:
Nemáte oprávnění prohlížet tuto stránku
Název: Re:ubuntu webserver/cache
Přispěvatel: Petr Merlin Vaněček 19 Ledna 2017, 16:21:00
@cabryk: Není to pravda - ověření na úrovni 401 si řeší zpracující script (případně server)

Kód: [Vybrat]
<?php
header('WWW-Authenticate: Basic realm="Cosi"');
header('HTTP/1.0 401 Unauthorized');
?>


Toto je test

Vyvolej si to PHP, vyskočí Ti přihlášení a do logu se zapíše 401. Zruš ho a normálně uvidíš "Toto je test".
Vůbec nevím, jaká by musela být kombinace s lokální cache, ale to je fuk :)

Pokud to jede, tak je to fajn.