Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Obecná podpora => Téma založeno: 3.14.TR 07 Září 2012, 09:47:13

Název: Dropbox + apache [vyřešeno]
Přispěvatel: 3.14.TR 07 Září 2012, 09:47:13
zdravim, mám takový problém
používám dropbox, který je nainstalovaný na /home/petr/Dropbox
potom mám symlink z /home/petr/www na /home/petr/Dropbox/www

teď jsem přes tasksel nainstaloval LAMP server, který běží perfektně, ale v /var/www

co bych rád:
pracovat se soubory v /home/petr/www které by se ukládaly pomocí simlinku do složky dropboxu
problém je v tom, že pokud nastavím v konfiguráku apache DocumentRoot na /home/petr/www nebo /home/petr/Dropbox/www vyskočí mi v prohlížeči hláška
Kód: [Vybrat]
Forbidden

You don't have permission to access / on this server.

Apache/2.2.22 (Ubuntu) Server at localhost Port 80

radši k tomu přihodim celý konfigurák
Kód: [Vybrat]
<VirtualHost *:80>
ServerAdmin info@petrbel.cz

DocumentRoot /home/petr/Dropbox/www
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /home/petr/Dropbox/www>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
allow from all
</Directory>

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

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride All
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>

trochu jsem googlil a našel jsem tohle http://ubuntuforums.org/archive/index.php/t-1270370.html
ale jejich řešení mi nefunguje, a mountnutí složky dropboxu do /var/www se mi moc nelíbí...

nemáte s tim někdo zkušenost nebo ještě líp řešení?
dík
Název: Re:Dropbox + apache
Přispěvatel: beer 07 Září 2012, 10:23:00
Co takhle udělat symlink /var/www na /home/petr/www  nebo /home/petr/Dropbox/www?

Kód: [Vybrat]
ln -s  /var/www /home/petr/www
ln -s  /var/www home/petr/Dropbox/www

Zkus změnit vlastníka /var/www z roota na petra přes
Kód: [Vybrat]
chown -R petr:petr /var/www
Název: Re:Dropbox + apache
Přispěvatel: 3.14.TR 07 Září 2012, 10:28:23
současný stav:
mám symlink z /var/www na /home/petr/Dropbox/www
petr je vlastník symlinku
konfigurák apache ukazuje na /var/www (samozřejmě po restartu serveru)

nefunguje :-/
Název: Re:Dropbox + apache
Přispěvatel: beer 07 Září 2012, 10:53:45
Možná je potřeba, aby byl petr ne vlastníkem symlinku, ale vlastníkem /var/www

Kód: [Vybrat]
chown -R petr:petr /var/www
Pak konfiguraci apache ponechat na /var/www, a apache spouštět jako petr, jestli to lze.
Název: Re:Dropbox + apache
Přispěvatel: 3.14.TR 07 Září 2012, 10:59:12
abysme si rozumněli, ty chceš aby soubory byly v /var/www a z dropboxu jsem na ně ukazoval??

toje blbý, protože u novýho zařízení budu muset nejdřív všechny soubory přesunout do /var/www a potom na ně dát symlink zpátky do dropboxu, čimž s ebudou znova synchronizovat, to nejde
Název: Re:Dropbox + apache
Přispěvatel: beer 07 Září 2012, 11:14:23
Dropbox nevidí rozdíl mezi symlinkem a souborem. Mělo by to fungovat, nemusíš přesunovat u nového zařízení Dropbox/www do var/www ani dělat symlinky, pokud ti bude stačit, že budeš mít soubory jen v dropboxu.
Název: Re:Dropbox + apache
Přispěvatel: 3.14.TR 07 Září 2012, 11:18:42
nevim jestli to chápu správně, ale:
až vezmu notebook, nainstlauju dropbox, tak v jeho složce budou soubory www a když budu chtítaby mi jeli na localhostu, tak je budu muset přesunout do /var/www kam udělám symlink z dropboxu aby se to synchronizovalo dál

a to je docela blbý, nebo je to jinak? ideální by bylo kdyby byly soubory v dropboxu a /var/www byl odkaz na ně
Název: Re:Dropbox + apache
Přispěvatel: beer 07 Září 2012, 11:33:58
Pro dropbox je to úplně jedno, jak to uděláš na jiných zařízeních. Nevidí rozdíl mezi symlinkem a souborem, pokud bude odkazovat symlink v dropboxu na nějaký soubor, bude synchrnonizovat soubor. Jenže svým řešením bys musel smazat /var/www (pokud existuje) a udělat obrácený symlink. Což samozřejmě jde.

Kód: [Vybrat]
rm -rf /var/www
ln -s /home/petr/Dropbox/www /var/www

Pozor, nemaž si /var/www, pokud není prázdný, ať nepřijdeš o data.
Název: Re:Dropbox + apache
Přispěvatel: 3.14.TR 07 Září 2012, 12:36:34
přesně takhle bych to chtěl, al takhle to pořád hlásí
Kód: [Vybrat]
Forbidden

You don't have permission to access / on this server.

Apache/2.2.22 (Ubuntu) Server at localhost Port 80
to už je ais jedno, jestli mám symlink na /var/www nebo /home/petr/www
Název: Re:Dropbox + apache
Přispěvatel: Šuohob 07 Září 2012, 13:00:02
nastav prava svemu domovskemu adresari a dalsim adresarum, aby tam mohl (pomoci symlinku) lezt apache:
mohlo by stacit: chmod o+rx /home/$USER

vedlejsi efekt je ten, ze udela tvuj domovsky adresar pristupny ostatnim uzivatelum. Da se to udelat i lepe, ale jako naznak to staci
Název: Re:Dropbox + apache
Přispěvatel: 3.14.TR 07 Září 2012, 13:06:21
nastav prava svemu domovskemu adresari a dalsim adresarum, aby tam mohl (pomoci symlinku) lezt apache:
mohlo by stacit: chmod o+rx /home/$USER

vedlejsi efekt je ten, ze udela tvuj domovsky adresar pristupny ostatnim uzivatelum. Da se to udelat i lepe, ale jako naznak to staci
jo to už pomohlo, díky moc, jenom opravim ten příkaz pro budoucí čtenáře
Kód: [Vybrat]
chmod o+rx -R /home/$USER
EDIT:
jenom závěrem: je teda opravdu možné nastavit to jak jsem původně chtěl: symlink z /home/petr/Dropbox/www na /home/petr/www, v konfiguráku apache je DocumentRoot nastaven na /home/petr/www ale musí být celá domovská složka práva pro čtení apacehm
Název: Re:[VYŘEŠENO] Dropbox + apache
Přispěvatel: Šuohob 07 Září 2012, 13:30:52
pokud mas doceument root na /home/petr/www, tak je ten symlink zbytecny
u toho chmodu nemusis menit prava u vsech podadresaru, postaci snad jen u tech adresaru, kam apache ma lezt
apache se da nastavit, aby misto /var/www hledal soubory v /home/$USER/public_html viz http://httpd.apache.org/docs/2.2/howto/public_html.html