Michael: + APACHE + Speicherrechte ???

Hallo,

mittels PHP script möchte ich eine Datei in ein Verzeichnis (D:/internet/file upload/ - ja es handelt sich um einen lokalen Server ohne Internetanbindung ...) kopieren.

Allerdings bekomme ich dabei folgende Fehlermeldung vom Server:

[zitat]
Forbidden
You don't have permission to access /php file upload/<br><b>Notice</b>: Undefined variable: PHP_SELF in <b>d:/internet/php file upload/fileupload_4.php</b> on line <b>23</b><br /> on this server.

--------------------------------------------------------------------------------

Apache/1.3.22 Server at 127.0.0.1 Port 80

[/zitat]

Allerdings kann ich per cgi/perl sehr wohl Dateien in diesem Verzeichnis erstellen.

Wo bzw. wie kann / muss ich in der Konfig. von Apache irgendwelche Zugriffsrechte setzen ?

Vielen Dank für jede Hilfe im Voraus.
(Serverkonfig. ist nicht mein Fachgebiet ;-) )

Grüße
M

  1. hi,

    Wo bzw. wie kann / muss ich in der Konfig. von Apache irgendwelche Zugriffsrechte setzen ?

    da wäre zuerst nachzufragen, ob denn dein PHP sonst funktioniert. Wenn das der Fall ist, ist zu prüfen, was du in deiner httpd.conf für das Verzeichnis "D:/internet/file upload/" (die Leertaste im Verzeichnisnamen ist bereits ein Problem) für Optionen vorgegeben hast. Und wenn auch das korrekt ist, müßtest du schon mal nen bißchen mehr PHP-Code rüberwachsen lassen.

    (Serverkonfig. ist nicht mein Fachgebiet ;-) )

    macht nix, im Forum gibts ein paar, die damit ganz gut zurechtkommen.

    Grüße retour

    Christoph S.

    1. Hallo Christoph,

      grundsätzlich funktioniert php sehr gut - bisher sind mir keine Fehler aufgefallen.

      Den Leerraum hab' ich vorhin gekillt - Folge: das beschriebene Problem ist weg, aber ...

      Zur Vorgeschichte:
      ich möchte ein php script testen (nicht von mir selber) welches einfache Dateien (momentan .img) auf den Server laden kann.

      [code: upload Datei]

      <FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="FileUpload_4.php">

      <INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="800000">
      <INPUT TYPE="HIDDEN" NAME="action" VALUE="1">
      File 1: <INPUT TYPE="FILE" NAME="file1" SIZE="30"><BR><BR>
      <INPUT TYPE="SUBMIT" VALUE="Upload">
      </FORM>

      [/code]

      Dann folgt jetzt hier der Teil, der den Upload durchführen soll:

        
      <?php if ($HTTP_POST_VARS['action']) { ?>  
      <HTML>  
      <HEAD>  
      <TITLE>File Upload Results</TITLE>  
      </HEAD>  
      <BODY BGCOLOR="WHITE" TEXT="BLACK">  
      <P><FONT FACE="Arial, Helvetica, sans-serif"><FONT SIZE="+2">File Upload Results</FONT><BR><BR>  
      <?php  
        
          //$uploadpath = '/path/to/store/uploaded/files/';  
       $uploadpath = 'localhost/php_file_upload/upload/';  
          $source = $HTTP_POST_FILES['file1']['tmp_name'];  
          $dest = '';  
        
          if (($source != 'none') && ($source != '' )){  
              $imagesize = getimagesize($source);  
        
              switch ( $imagesize[2] ){  
                  case 0:  
                      echo '<BR> Image is unknown <BR>';  
                      break;  
                  case 1:  
                      echo '<BR> Image is a GIF <BR>';  
                      $dest = $uploadpath.uniqid('img').'.gif';  
                      break;  
                  case 2:  
                      echo '<BR> Image is a JPG <BR>';  
                      $dest = $uploadpath.uniqid('img').'.jpg';  
                      break;  
                  case 3:  
                      echo '<BR> Image is a PNG <BR>';  
                      $dest = $uploadpath.uniqid('img').'.png';  
                      break;  
              }  
        
              if ( $dest != '' ){  
                  if (move_uploaded_file( $source, $dest )) {  
                      echo 'File successfully stored.<BR>';}  
          else{  
               echo 'File could not be stored.<BR>';  
            }  
                }  
         }  
         else{  
              echo 'File not supplied, or file too big.<BR>';  
           }  
        
      ?>  
        
      </BODY>  
      </HTML>  
      <?php } else { ?>  
      <!-- File Upload Form HTML Code Here -->  
      <?php } ?>  
      
      

      Beide Code-Teile stehen in der Datei FileUpload_4.php.

      Problem ist jetzt, dass zwar der 'Bildschirm' des zweiten Codes "File Upload Results" erscheint allerdings mit den Meldungen:

      1. Warning: Unable to create 'localhost/php_file_upload/upload/img3d3482f7a63ab.gif': No such file or directory in d:\internet\php_file_upload\fileupload_4.php on line 89

      Dieses Bild ist auch tatsächlich nicht vorhanden.

      2. Dann logischerweise die Meldung:

      Warning: Unable to move 'C:\WINDOWS\TEMP\php373.TMP' to 'localhost/php_file_upload/upload/img3d3482f7a63ab.gif' in d:\internet\php_file_upload\fileupload_4.php on line 89
      File could not be stored.

      Dort wo ich das php-Script gefunden hab' gab's leider keine Zusatzinfos dazu außer den obigen Code.

      Danke schon mal im Voraus.

      Späte Grüße
      Michael