Ongelmatilanteita

Fuksiwiki
Loikkaa: valikkoon, hakuun

http://<miun-tunnus>.users.cs.helsinki.fi/

db muutti syksyllä 2010. Kotisivu- ja miksei vaikka php-kehityskin toimii parhaiten users.cs.helsinki.fi-koneessa (svm-16.cs.helsinki.fi). Oikea tapa lienee seuraava:

 echo y | wanna-htdocs
 cd && chmod -R og-rwx ~ && touch htdocs/.htaccess && echo "<?php echo \"Toimii\" ?>" > htdocs/index.php
 setfacl -m u:www-data:--x ~ ~/htdocs && setfacl -m u:www-data:r-- ~/htdocs/.htaccess && setfacl -m u:www-data:r-- ~/htdocs/index.php

Tämän jälkeen toimii selaimessa esimerkiksi http://mcrantan.users.cs.helsinki.fi/index.php.

Lue ja ymmärrä mitä http://users.cs.helsinki.fi/README.users.cs.helsinki.fi.txt sanoo! Kun lisäät tiedostoja (vaikka kuvan foo.png), jokaiselle pitää erikseen määritellä lukuoikeus käyttäjälle www-data. Toisin sanoen, kun lisäät muuta sisältöä kuin ajettavia skriptejä (PHP), joudut antamaan käyttäjälle www-data lukuoikeuden tiedostoon:

 setfacl -m u:www-data:r-- <tiedoston-nimi>

Tämä pätee yhtälailla hakemistoihin. Jos teet hakemiston ~/htdocs/foo ja sen alle tiedoston index.html, joudut erikseen antamaan käyttäjälle www-data suoritusoikeuden hakemistoon ja lukuoikeuden tiedostoon:

 setfacl -m u:www-data:--x ~/htdocs/foo
 setfacl -m u:www-data:r-- ~/htdocs/foo/index.html

wanna-* komennoilla saa myös PostgreSQLn, MySQLn ja Tomcatin (*shudder*)

Sivusto http://www.cs.helsinki.fi/u/<miun-tunnus> : 'You don't have permission to access'...

Kyllä harmittaa kun hienot sivut on just julkaisua varten valmiit ja lapiokurssin assari kyselee tuotosten perään. Ei huolta, seuraavilla hilirimpsuilla oikeudet menevät kohdilleen ja sivut alkavat näkyä:

 cd && chmod 0711 . && chmod 0711 public_html
 cd public_html && find ./ -type d -exec chmod 0711 {} \; && find ./ -type f -exec chmod 0644 {} \;

1. rivillä siirrytään kotihakemistoon ja jos se onnistuu, muutetaan sen oikeudet drwx--x--x ja jos sekin onnistuu, muutetaan public_html-hakemiston oikeudet semmoisiksi kuin laitos on tarkoittanut. Merkit && komentojen välissä tarkoittavat: 'mikäli edellinen komento suoritettiin onnistuneesti, siirry seuraavaan'.

Kakkosrivillä siirrytään hakemistoon public_html ja jos se onnistuu, muutetaan kaikkien sen alla olevien hakemistojen omistukset niinkuin laitos on ne tarkoittanut ja jos sekin onnistuu, muutetaan public_html:n alla olevien kaikkien tiedostojen oikeudet niin että vain omistaja voi muuttaa mutta muut lukea.

Lisätietoa: http://www.cs.helsinki.fi/compfac/ohjeet/WWW/rajoittaminen.html - mm. kuinka tehdään salasanasuojattuja sivuja.