Archiv verlassen und diese Seite im Standarddesign anzeigen : PHP kann nicht schreiben / Rechte bei Apache
Hallo!
Ich hab schon hundert Posts in verschiedenen Foren gelesen heute - und komm einfach nicht ans Ziel. Nur ETWAS trennt mich vom Glück!
Ich habe meinen eigenen Linux Server neu installiert und zwar mit openSUSE 11.0 (schon ein paar Wochen her). Ich habe darauf geachtet, möglichst nichts manuall zu befummeln und habe mit YAST praktisch alles hinbekommen: Apache2, MySQL, PHP5 alles wie "aus der Box/ von der DVD", abgesehen von den Patches die mir von LINUX eingespielt wurden - da bin ich momentan aktuell.
Funktioniert *fast* alles... ausser PHP, das nicht schreiben kann.
Ich habe eine PHP Anwendung installiert (Joomla 1.5) und zwar (wie in deren Anleitung optional vorgesehen) direkt an der Konsole (als root). Da werden dann in einem Verzeichnis unter /srv/www/htdocs einfach die zugehörigen Dateien aus einem ZIP hinentpackt. Alle diese Dateien haben den Modus 775 (root/users/all).
Die Anwendung startet sauber und kann auch auf die MySQL DB zugreifen. Aber sobald sie versucht, eine Datei zu verändern (zu schreiben) - ist sense und es kommt eine Meldung (xxx unwritable).
Als root, mit meiner regulären User-Anmeldung, sogar über FTP kann ich dort Dateien hinschreiben - aber PHP kann das offenbar nicht.
Dazu kommt noch eine andere Sache. Ich habe versucht, probehalber alle diese Dateien auf 777 zu setzen. Geht nicht - das bleibt wirkungslos, wie wenn "etwas" den Modus gleich wieder auf 775 zurücksetzen würde. Ich kann auch nicht den Owner der Dateien ändern. Dies ist nicht nur für die Dateien der PHP-Anwendung der Fall, sondern im ganzen htdocs.
Kann mir jemand helfen???
Am liebsten würd ich so wenig wie möglich manuell verbasteln. Ich bin kein LINUX-Crack.
Lies dir die Joomla Doku durch - dort sollte stehen welche Files dem Webserver User gehören müssen, diese dann einfach per chown dem Benutzer unter dessen Kennung der Webserver läuft überschreiben.
mfg
cane
Lies dir die Joomla Doku durch - dort sollte stehen welche Files dem Webserver User gehören müssen, diese dann einfach per chown dem Benutzer unter dessen Kennung der Webserver läuft überschreiben.
Danke - die Anleitungen für Joomla hab ich durchgelesen bis mir der Kopf auf die Tastatur geknallt ist und auch die Foren konsultiert. Das Problem haben viele, aber eine gute Lösung hat niemand von denen gefunden. Einer - der "lustigste" - hat als Lösung angegeben, jedesmal alle Dateien mit FTP runterzuladen, anzupassen und wieder raufzuladen...
Und wie gesagt - das Problem bezieht sich nicht nur auf Joomla, sondern auf PHP (dasselbe hatte ich z.B. auch mit phpopenchat auf dem alten Server). Es muss etwas mit dem Einsatz von Apache2 zu tun haben.
chown funktioniert eben nicht! Das System erlaubt nicht, dass die Ownership dieser Dateien geändert wird! Diese Dateien unter htdocs verhalten sich anders als die andern - ich kann mir das nicht erklären.
Ich hab sogar schon versucht, wwwrun und sogar nobody zu Mitglieder von users zu machen - hilft alles nicht...
Nachdem das so "aus der Box" kommt, kann ich mir nicht erklären, warum NUR ICH dieses Problem haben sollte......
Kann jemand mal versuchen, ob er (natürlich wenn APACHE2 läuft) als root eine Datei unter /srv/www/htdocs erzeugen und von der nachher die Rechte und den Owner verändern kann???
Als root kann man JEDE Datei beliebig umchownen, es sei denn es laufen Sicherheitserweiterungen die das verbieten (SElinux, AppArmor, ...).
--> Bist Du root?
mfg
cane
Als root kann man JEDE Datei beliebig umchownen, es sei denn es laufen Sicherheitserweiterungen die das verbieten (SElinux, AppArmor, ...).
--> Bist Du root?
Ich bin voll krass root! Es ist mein Server, der unter meinem Tisch steht - und ich habe das natürlich (zumindest als es anders nicht ging) als root versucht. Als root hab ich ja das ganze Zeugs auch draufkopiert.
Sicherheitserweiterungen tönt interessant. Wie find ich raus, ob sowas läuft? Ist das denn default (wenn man den Apache2 per YAST zum Leben erweckt).
Apache2 macht selbst nicht sowas??
Zumindest bei chmod ist mir aufgefallen, dass ich (wenn ich versuche 777 zu setzen) eine Erfolgsmeldung bekomme - und der Eindruck ist, dass - hui! - der Modus "von Geisterhand" grad wieder zurückgesetzt wird. (Während bei chown eine Meldung kommt, das sei nicht erlaubt.)
poste doch auch einfach mal ein konkretes Beispiel - ls -la vorher, konkreter Befehl, exakte Ausgabe, ls -la nachher. [code]-Tags nicht vergessen.
Mach doch mal ein voll krasses
ls -l /srv/www/htdocs
regards
//NACHTRAG:
Da war wohl jemand schneller... ;-)
Also hier ein Beispiel mit chown:
ROBLINUX:/srv/www/htdocs # ls -l
insgesamt 176
drwxrwxr-x 4 root users 16384 9. Apr 2006 backups
drwxrwxr-x 2 root users 16384 30. Dez 23:13 Files
drwxrwxr-x 2 root users 16384 1. Nov 13:25 gif
drwxrwxr-x 8 root users 16384 4. Jan 15:52 haeschen
-rwxrwxr-x 1 root users 44 1. Nov 13:24 index_org.html
drwxrwxr-x 4 root users 16384 2. Nov 15:48 .Trash-0
drwxrwxr-x 2 root users 65536 20. Aug 19:20 .Trash-root
drwxrwxr-x 5 root users 16384 16. Apr 2006 ulrikeberthold
ROBLINUX:/srv/www/htdocs # chown -v wwwrun haeschen
chown: Ändern des Eigentümers von „haeschen“: Die Operation ist nicht erlaubt
Wechsel des Eigentümers von „haeschen“ in wwwrun fehlgeschlagen
ROBLINUX:/srv/www/htdocs # ls -l
insgesamt 176
drwxrwxr-x 4 root users 16384 9. Apr 2006 backups
drwxrwxr-x 2 root users 16384 30. Dez 23:13 Files
drwxrwxr-x 2 root users 16384 1. Nov 13:25 gif
drwxrwxr-x 8 root users 16384 4. Jan 15:52 haeschen
-rwxrwxr-x 1 root users 44 1. Nov 13:24 index_org.html
drwxrwxr-x 4 root users 16384 2. Nov 15:48 .Trash-0
drwxrwxr-x 2 root users 65536 20. Aug 19:20 .Trash-root
drwxrwxr-x 5 root users 16384 16. Apr 2006 ulrikeberthold
und hier eins mit chmod:
ROBLINUX:/srv/www/htdocs # ls -l
insgesamt 176
drwxrwxr-x 4 root users 16384 9. Apr 2006 backups
drwxrwxr-x 2 root users 16384 30. Dez 23:13 Files
drwxrwxr-x 2 root users 16384 1. Nov 13:25 gif
drwxrwxr-x 8 root users 16384 4. Jan 15:52 haeschen
-rwxrwxr-x 1 root users 44 1. Nov 13:24 index_org.html
drwxrwxr-x 4 root users 16384 2. Nov 15:48 .Trash-0
drwxrwxr-x 2 root users 65536 20. Aug 19:20 .Trash-root
drwxrwxr-x 5 root users 16384 16. Apr 2006 ulrikeberthold
ROBLINUX:/srv/www/htdocs # chmod -v 777 haeschen
Modus von „haeschen“ nach 0777 (rwxrwxrwx) geändert
ROBLINUX:/srv/www/htdocs # ls -l
insgesamt 176
drwxrwxr-x 4 root users 16384 9. Apr 2006 backups
drwxrwxr-x 2 root users 16384 30. Dez 23:13 Files
drwxrwxr-x 2 root users 16384 1. Nov 13:25 gif
drwxrwxr-x 8 root users 16384 4. Jan 15:52 haeschen
-rwxrwxr-x 1 root users 44 1. Nov 13:24 index_org.html
drwxrwxr-x 4 root users 16384 2. Nov 15:48 .Trash-0
drwxrwxr-x 2 root users 65536 20. Aug 19:20 .Trash-root
drwxrwxr-x 5 root users 16384 16. Apr 2006 ulrikeberthold
Was sind [code]-Tags??
So sollte es sein, hier dasselbe in /root/Documents:
chmod
ROBLINUX:~/Documents # ls -l
insgesamt 20
drwxr-xr-x 2 root root 4096 5. Jan 21:08 haeschen
-rw-r--r-- 1 root root 6943 1. Nov 13:20 New Document.ott
-rw-r--r-- 1 root root 6391 1. Nov 13:20 New Spreadsheet.ots
ROBLINUX:~/Documents # chmod -v 777 haeschen
Modus von „haeschen“ nach 0777 (rwxrwxrwx) geändert
ROBLINUX:~/Documents # ls -l
insgesamt 20
drwxrwxrwx 2 root root 4096 5. Jan 21:08 haeschen
-rw-r--r-- 1 root root 6943 1. Nov 13:20 New Document.ott
-rw-r--r-- 1 root root 6391 1. Nov 13:20 New Spreadsheet.ots
und chown
ROBLINUX:~/Documents # ls -l
insgesamt 20
drwxrwxrwx 2 root root 4096 5. Jan 21:08 haeschen
-rw-r--r-- 1 root root 6943 1. Nov 13:20 New Document.ott
-rw-r--r-- 1 root root 6391 1. Nov 13:20 New Spreadsheet.ots
ROBLINUX:~/Documents # chown -v wwwrun haeschen
Eigentümer von „haeschen“ in wwwrun geändert
ROBLINUX:~/Documents # ls -l
insgesamt 20
drwxrwxrwx 2 wwwrun root 4096 5. Jan 21:08 haeschen
-rw-r--r-- 1 root root 6943 1. Nov 13:20 New Document.ott
-rw-r--r-- 1 root root 6391 1. Nov 13:20 New Spreadsheet.ots
hast du mal nach safe_mode in der php.ini oder http.conf geschaut und kontrolliert. estimmte Anwendungen haben mit safe_mode probs und können nicht schreiben oder Änderungen übernehmen. Wenn, dann schmeiß Joomla einfach weg und benutz was ordentliches.
Das alles unter root mit chmod 777 laufen zu lassen ist keine gute Idee und wird dir auch nichts bringen.
Ich hab jetzt nen ganz üblen verdacht. Bevor ich weiter darauf eingehe poste doch bitte mal die Ausgabe von "mount" unter verwendung der [code]- Tage. (Das schwarze #- Symbol in der Symbolleiste hier im Forumseditor)
yeeehaaaaaa, vfat rulez! :D
yeeehaaaaaa, vfat rulez! :D
Wenn ich einen Tipp abgeben soll würde ich sagen NTFS... :ugly:
Ne, VFAT.
Habt's ihr mich erwischt! So ganz neu hab ich den Server gar nicht installiert - jetzt dämmert's mir wieder :D - den 2. Disk hab ich einfach wieder drangehängt. Und den hab ich früher unter openSUSE 10.0 wohl mit VFAT formatiert.
ROBLINUX:/ # mount
/dev/sda2 on / type ext3 (rw,acl,user_xattr)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
debugfs on /sys/kernel/debug type debugfs (rw)
udev on /dev type tmpfs (rw)
devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
/dev/sdb1 on /srv/www/htdocs type vfat (rw,noexec,nosuid,nodev,gid=100,umask=0002,utf8=tr ue)
securityfs on /sys/kernel/security type securityfs (rw)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
ROBNAS:/xxxxx on /root/ROBNAS_xxxx type nfs (rw,addr=192.168.1.10,nfsvers=3,proto=udp,mountpro to=udp)
ROBNAS:/xxxxx on /root/ROBNAS_xxxx type nfs (rw,addr=192.168.1.10,nfsvers=3,proto=udp,mountpro to=udp)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
proc on /var/lib/ntp/proc type proc (ro)
/dev/sr1 on /media/SU1100.001 type iso9660 (ro,nosuid,nodev,uid=1000)
gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)
Weiss nicht mehr, wieso ich das vor über 2 Jahren gemacht hab - hat wohl am ehesten nach Windows getönt und ich habe ja sonst keine Ahnung. Aber ich entnehme euren Statements mal, dass das nicht gut ist... mit soviel no... tönt ja schon nicht gut.
Ich geh mal hin und kopier das runter und häng den Disk ab... gute Idee:confused:
Ich geh mal hin und kopier das runter und häng den Disk ab... gute Idee:confused:
Warum abhängen, warum nicht:
BackUp
Disk mit ext3 formatieren
BackUp zurückspielen
fstab anpassen
?
Warum abhängen, warum nicht:
BackUp
Disk mit ext3 formatieren
BackUp zurückspielen
fstab anpassen
?
Ja... jedenfalls hab ich das ganze verzeichnis auf den 1. Disk kopiert und jetzt kann ich auch chown machen nach wwwrun und - ES FUNKTIONIERT! :o
Gelobt sei euer Name resp. eure ID!:cool: Das hätt ich nie im Leben rausgefunden - selbst.
Jetzt wo die Gelegenheit günstig ist, bau ich vielleicht grad bissl grösseren Disk ein und vielleicht grad bissl RAID1. Weil das Gerät da wo ich alles nauftu ist bissl alt und hat nur 2x 20GB disken drin.
Habt's ihr mich erwischt! So ganz neu hab ich den Server gar nicht installiert - jetzt dämmert's mir wieder :D - den 2. Disk hab ich einfach wieder drangehängt. Und den hab ich früher unter openSUSE 10.0 wohl mit VFAT formatiert.
Na das war ja dann wohl mein "Schuss ins Blaue des Monats"! :D Freut mich dass es geholfen hat.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.