Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Portal > Foren > PHP > PHP-Programmierung > Ftp Root Per Php

Layoutprobleme? - Styleswitcher!

Antwort
 
Themen-Optionen
Alt 11.05.2007, 19:45 Nach oben    #1
cspiegl
Benutzer
 
Benutzerbild von cspiegl
 
Registriert seit: 03.12.2006
Beiträge: 52
Standard Ftp Root Per Php

Guten Tag,
ich habe da mal wieder ein Problem:
Ich möchte mit einem PHP-Script auf den FTP zugreifen möchte aber vorher herrausfinden in welchem ordner auf dem FTP sie die Datei befindet von welcher aus ich zugreife. (da ich in diesen Ordner wechseln möchte)

Ich würde mich freuen wenn jemand eine Idee hätte.
Wenn ihr nicht verstanden habt was ich meine fragt einfach nach.

Ich sage jetzt schon DANKE!
__________________
MFG / Best Regards
KwasK.com / cspiegl
  • MacBook - 2,16Ghz - 4GB Ram - 120GB HDD - 13" (+ 23" Widescreen) - Mac OS X Leopard
  • Canon EOS 30D - Kit Objektiv - 2GB + 4GB CF
  • iPod nano - 4GB
cspiegl ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 19:53 Nach oben    #2
dr.e.
Christian W. Achatz
 
Benutzerbild von dr.e.
 
Registriert seit: 05.02.2007
Ort: München
Beiträge: 106
Standard

Hallo cspiegl,

verstehe ich dich richtig: Die PHP-Datei liegt ebenso im chroot des FTP-Servers?

Wenn ja, solltest du per getcwd() den aktuellen Pfad der Datei auf dem Filesystem herausfinden und entsprechend matchen können.

Die Frage ist nur: wozu bracuht man so ein wirres Konstrukt?
__________________
Grüße,
Dr.E.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a look at http://www.adventure-php-framework.org!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 19:58 Nach oben    #3
Jann Hendrik
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 1.539
Standard

kann sein, dass ich das überlesen habe... aber von chroot war nicht die Rede, oder?
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

die aktuelle Umfrage: Wo kauft ihr eure Literatur?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 20:03 Nach oben    #4
cspiegl
Benutzer
 
Benutzerbild von cspiegl
 
Registriert seit: 03.12.2006
Beiträge: 52
Standard

das ganze soll so sein das das scrpit auch in irgendeinen unterordner liegen kann und ich dann in den ordner wechseln will und mit: dirname(__FILE__) geht es sicher nicht da dort ja dann der gesamte pfad zu der datei steht...(LEIDER)

der sinn ist das ich über diesen weg chmods setzen will (da ich ja mit einer normalen php datei nur rechte auf dateien habe die chmod 777 haben auf andere "darf" ich kein chmod setzten. (oder stimmt das nicht und ich habe einen anderen fehler im system?)
__________________
MFG / Best Regards
KwasK.com / cspiegl
  • MacBook - 2,16Ghz - 4GB Ram - 120GB HDD - 13" (+ 23" Widescreen) - Mac OS X Leopard
  • Canon EOS 30D - Kit Objektiv - 2GB + 4GB CF
  • iPod nano - 4GB
cspiegl ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 20:14 Nach oben    #5
dr.e.
Christian W. Achatz
 
Benutzerbild von dr.e.
 
Registriert seit: 05.02.2007
Ort: München
Beiträge: 106
Standard

Hallo cspiegl,

an sich könntest du ein

Code:
system('chmod a+x /path/to/php/file.ext');
in einer PHP-Datei ausführen um dann die File-Attribute über einen System-Command (=mit den Rechten, mit denen der Webserver läuft) zu setzen. Das sollte IMHO auf alle Dateien im Filesystem gehen, auf die der Webserver-Benutzer explizit oder implizit Schreib-Rechte hat.
__________________
Grüße,
Dr.E.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a look at http://www.adventure-php-framework.org!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 20:25 Nach oben    #6
cspiegl
Benutzer
 
Benutzerbild von cspiegl
 
Registriert seit: 03.12.2006
Beiträge: 52
Standard

villeicht hilft es ja was:
wenn ich nen normalen chmod mache: (auf eine datei die keine 777 rechte hat)
Warning: chmod( Operation not permitted in ...........

und mit der version
Zitat:
system('chmod a+x /path/to/php/file.ext');
geht es leider auch nicht (wobei ich in diesem fall nicht genau weis wiso

Ein 2tes Kriteium was dagegeen spricht ist das bei vielen hostern (vorallem freehostern) die funktion abgeschaltet ist und ich gerade für diese deises script schreibe.
__________________
MFG / Best Regards
KwasK.com / cspiegl
  • MacBook - 2,16Ghz - 4GB Ram - 120GB HDD - 13" (+ 23" Widescreen) - Mac OS X Leopard
  • Canon EOS 30D - Kit Objektiv - 2GB + 4GB CF
  • iPod nano - 4GB
cspiegl ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 20:35 Nach oben    #7
think
 
Benutzerbild von think
 
Registriert seit: 10.11.2005
Ort: Schweiz -> Basel
Beiträge: 202
Standard

http://ch2.php.net/manual/en/function.ftp-chmod.php

Das funktioniert doch bei den meisten Freehostern?
__________________
Bundesrat entdeckt das Web
http://moritzleuenberger.blueblog.ch/

Social Networking 2.0

http://www.alleinr.de/
think ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 20:43 Nach oben    #8
cspiegl
Benutzer
 
Benutzerbild von cspiegl
 
Registriert seit: 03.12.2006
Beiträge: 52
Standard

ja nur dazu muss ich erstmal in das verzeichniss in welchem die datei liegt die das ganze ausführt. (es MUSS dieser Ordner sein)

und da liegt mein Problem ich habe keine Idee wie ich dan den Ordner komme da man zwar mit allmöglichen Funktionen auslesen kann wo das ganze vom "/" Verzeichniss aus aber nirgends vom FTP "/" aus.

Meine letzet idee war das man in dem Script definieren muss (fals es sowas gibt) in welchem ordner auf dem fpt die httpdocs sind (das ist ja auch bei jedem hoster anders die einen haben nur httpdocs die anderen ahben noch anders daher mehr ordner) und dann den weitern ordner vom php herrausfinden lassen also irgendwie über die URL: (http://MEINE-DOMEIN.tld/HIER DANN DEN ORDNER DEN ICH HERRAUSFINDEN MUSS

wenn das ginge wäre mir schon echt gut geholfen.
__________________
MFG / Best Regards
KwasK.com / cspiegl
  • MacBook - 2,16Ghz - 4GB Ram - 120GB HDD - 13" (+ 23" Widescreen) - Mac OS X Leopard
  • Canon EOS 30D - Kit Objektiv - 2GB + 4GB CF
  • iPod nano - 4GB
cspiegl ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 20:58 Nach oben    #9
think
 
Benutzerbild von think
 
Registriert seit: 10.11.2005
Ort: Schweiz -> Basel
Beiträge: 202
Standard

Such mal in einer php_info() nach _SERVER. Die Strings dort sollten dein Problem lösen. Das Verzeichnis wechseln kannst du mit ftp_chdir().

Achte dich doch bitte ein bischen auf Rechtschreibung und Interpunktion. Es ist echt anstregend deine Beiträge zu interpretieren.
__________________
Bundesrat entdeckt das Web
http://moritzleuenberger.blueblog.ch/

Social Networking 2.0

http://www.alleinr.de/
think ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 21:24 Nach oben    #10
$traight-$hoota
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 487
Standard

Zitat:
Zitat von think Beitrag anzeigen
Such mal in einer php_info() nach _SERVER. Die Strings dort sollten dein Problem lösen.
hm, ich glaube auch damit lässt sich das problem nicht lösen; dafür müsste man schon wissen, wo die ordner für php-scripte im ftp-server liegen und das kann man letztendlich nicht so einfach rausbekommen, ohne die ftp-config zu kennen.
um wirklich alle situationen abzudecken wirst du nicht um eine von hand zu setzende variable herum kommen.
oder du durchsuchst den ftp-server bis du die php-datei und deren verzeichnis gefunden hast.
__________________
Weißt Bescheid - Scheiß wie weit
$traight-$hoota ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 21:30 Nach oben    #11
think
 
Benutzerbild von think
 
Registriert seit: 10.11.2005
Ort: Schweiz -> Basel
Beiträge: 202
Standard

Eventuell hilft dir http://ch2.php.net/manual/en/function.ftp-nlist.php weiter. Ansonsten halt mal Google intensiv bemühen.
__________________
Bundesrat entdeckt das Web
http://moritzleuenberger.blueblog.ch/

Social Networking 2.0

http://www.alleinr.de/
think ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 21:34 Nach oben    #12
cspiegl
Benutzer
 
Benutzerbild von cspiegl
 
Registriert seit: 03.12.2006
Beiträge: 52
Standard

ich bin grad am versuchen das so zu lösen das ich einfach den HTTPDOCS order im script setzen lasse (von hand) und dann läst sich der rest mit php auslesen etc...
__________________
MFG / Best Regards
KwasK.com / cspiegl
  • MacBook - 2,16Ghz - 4GB Ram - 120GB HDD - 13" (+ 23" Widescreen) - Mac OS X Leopard
  • Canon EOS 30D - Kit Objektiv - 2GB + 4GB CF
  • iPod nano - 4GB
cspiegl ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 22:02 Nach oben    #13
dr.e.
Christian W. Achatz
 
Benutzerbild von dr.e.
 
Registriert seit: 05.02.2007
Ort: München
Beiträge: 106
Standard

Hallo cspiegl,

auch aus den nachfolgenden Ausführungen erschließt sich der Sinn nicht wirklich. Ein Entwickler sagte mal zu mir: "Wenn du solche Handstände machen musst, stimmt sicher das Design einfach nicht!". Und das sehe ich hier, auch wenn du glaubhaft versicherst, dass es so sein muss. Für was muss eine PHP-Datei mit anderen Datei-Attributen ausgestattet sein? dem PHP-Interpreter ist das ziemlich egal und dem Filesystem auch. Die PHP-Dateien sind trotzdem mit

$ php -f /path/p/my/php/file.ext

oder über HTTP (Apache) ausführbar. Sorry, wenn das kontraprodoktiv klingt, aber ich bin mir sicher, es gibt eine besser Lösung für dein Problem (das du uns aber nicht verrätst).
__________________
Grüße,
Dr.E.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a look at http://www.adventure-php-framework.org!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 22:12 Nach oben    #14
cspiegl
Benutzer
 
Benutzerbild von cspiegl
 
Registriert seit: 03.12.2006
Beiträge: 52
Standard

das problem besteht darin das ich einen chmod-saver programmierer.
Das Script soll als erstes die Chmods in eine datei speichern und dann beim einspielen diese dann aus der datei wieder auslesen und an die jeweiligen dateien verteilen bis jetzt funktioniert nahezu alles jedoch eben das chmods wieder zu vergeben nicht.
__________________
MFG / Best Regards
KwasK.com / cspiegl
  • MacBook - 2,16Ghz - 4GB Ram - 120GB HDD - 13" (+ 23" Widescreen) - Mac OS X Leopard
  • Canon EOS 30D - Kit Objektiv - 2GB + 4GB CF
  • iPod nano - 4GB
cspiegl ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.05.2007, 22:26 Nach oben    #15
dr.e.
Christian W. Achatz
 
Benutzerbild von dr.e.
 
Registriert seit: 05.02.2007
Ort: München
Beiträge: 106
Standard

Und an welche Dateien möchtest du die Datei-Eigenschaften verteilen? PHP-Dateien? Bash-Scripts?

Wenn du darüber ein Deployment machen möchtest, so rate ich dir das anders zu lösen (Ant oder dirverse andere Scripte, die du konfigurieren kannst).
__________________
Grüße,
Dr.E.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a look at http://www.adventure-php-framework.org!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 12.05.2007, 11:14 Nach oben    #16
cspiegl
Benutzer
 
Benutzerbild von cspiegl
 
Registriert seit: 03.12.2006
Beiträge: 52
Standard

An alle dateien die auf in dem Ordner sind (bzw die das Backup-Script erfasst hat) möchte ich den chmod verteilen...
Und wenn ich versuche einen chmod auf eine datei zu setzten bei der ich nicht 755 oso rechte habe dann geht das nicht aber über ftp würde das gehen. (zumindest denke ich das)
__________________
MFG / Best Regards
KwasK.com / cspiegl
  • MacBook - 2,16Ghz - 4GB Ram - 120GB HDD - 13" (+ 23" Widescreen) - Mac OS X Leopard
  • Canon EOS 30D - Kit Objektiv - 2GB + 4GB CF
  • iPod nano - 4GB
cspiegl ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 12.05.2007, 11:51 Nach oben    #17
xabbuh
Benutzer
 
Benutzerbild von xabbuh
 
Registriert seit: 03.12.2005
Ort: Osnabrück
Beiträge: 73
Standard

Zitat:
Zitat von cspiegl Beitrag anzeigen
An alle dateien die auf in dem Ordner sind (bzw die das Backup-Script erfasst hat) möchte ich den chmod verteilen...
Dann wäre die einfachste Option, einfach direkt beim Sichern die Zugangsberechtigungen ebenfalls mitzusichern.

Zitat:
Zitat von cspiegl
Und wenn ich versuche einen chmod auf eine datei zu setzten bei der ich nicht 755 oso rechte habe dann geht das nicht aber über ftp würde das gehen. (zumindest denke ich das)
Das hat mit den Werte der Rechtemaske recht wenig zu tun. chmod kann nur von dem Benutzer für eine Datei aufgerufen werden, die auch Besitzer dieser Datei ist (root darf dies natürlich ebenfalls unabhängig von den Besitztümern).
ast du deine Scripte nun per FTP-Client hochgeladen, wovon ich ausgehe, gehören diese dem Benutzer, unter dessen Kennung der FTP-Server läuft (beispielsweise ftp). PHP-Scripte, die per HTTP aufgerufen werden, laufen jedoch unter der Kennung des Webservers (üblicherweise www-data) und haben somit keine Berechtigung die Rechtemaske der PHP-Dateien zu ändern.

Gruß
Christian
xabbuh ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 12.05.2007, 15:16 Nach oben    #18
cspiegl
Benutzer
 
Benutzerbild von cspiegl
 
Registriert seit: 03.12.2006
Beiträge: 52
Standard

jup soweit bin ich auch schon und zum thema rechtemastekn gleich mitsichern, das mache ich eh ich sagte doch ich hab kein problem mit dem sichern sondern mit dem wieder einspieln.

Und ich möchte das ganze mit FTP machen und zwar genau aus dem grund das der HTTP user nicht genügend Rechte hat.
Und ich habe das ganze jetzt auch schon Programmiert und habe nurnoch einige kleine Probleme => ansich ist das Problem gelöst...

Fals jemand allerdings immernoch besser weis wie ich das machen könnte kann das gerne schreiben.
__________________
MFG / Best Regards
KwasK.com / cspiegl
  • MacBook - 2,16Ghz - 4GB Ram - 120GB HDD - 13" (+ 23" Widescreen) - Mac OS X Leopard
  • Canon EOS 30D - Kit Objektiv - 2GB + 4GB CF
  • iPod nano - 4GB
cspiegl ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 13.05.2007, 10:49 Nach oben    #19
dr.e.
Christian W. Achatz
 
Benutzerbild von dr.e.
 
Registriert seit: 05.02.2007
Ort: München
Beiträge: 106
Standard

Hallo cspiegl,

Da das Problem gelöst ist, nur noch eine Anregung:

Ich würde dazu ein bash-Skript implementieren, dass mir Backup und Restore von lokal via FTP ausführt (so zusagen ein Deployment). Dann kannst du z.B. bereits vorhandene Bash-Libs nutzen, die dir die Permissions auslesen. Beim Restore/Upload könnte man das dann aus einer Backup-Datei auslesen und der Datei nach dem Upload verpassen.
Solltest du ssh-Zugriff auf deinen Web-Hoster-Account haben (z.B. bei 1&1), dann könntest du das Script auch direkt per Shell ausführen.
__________________
Grüße,
Dr.E.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a look at http://www.adventure-php-framework.org!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

« Lokale Batch-Datei aus PHP-Script starten | Checkboxen prüfen »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge anzufügen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are Aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Eigene IP abrufen und in Datei per FTP schreiben Jan Gesuche 5 17.03.2007 14:38
CPU / RAM - Last per PHP ausgeben cspiegl PHP-Programmierung 2 27.12.2006 19:16
PHP FTP function ... again juergreh PHP-Programmierung 3 08.05.2006 14:12
PHP FTP function juergreh PHP-Programmierung 2 05.05.2006 11:29
Mit Applet Datei per ftp uploaden Tago Desktop-Applikationen und Grafik 3 09.09.2005 18:17


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:16 Uhr.

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.6.7, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.0.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44