Downloadordner auf Homepage erstellen! Welche Rechte muessen wo vergeben werden?

sapphire_pro

Enthusiast
Thread Starter
Mitglied seit
18.10.2004
Beiträge
7.929
Hallo,

ich moechte fuer den LG S510 Sammelthread einen Ordner mit Treibern anlegen.

Das habe ich in der Systemverwaltung der Homepage auch gemacht.

Der Pfad lautet www.hendrik-reinhardt.de/S510

Leider kommt beim Zugriff ueber Firefox immer "Forbidden you do not have permission to acces the server"

Welche Rechte muss ich denn konfigurieren, damit jemand die Dateien in dem Ordner S510 sehen und downloaden kann?

Die restlichen Ordner sollen die Nutzer nicht sehen!


Vielen Dank schonmal!
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Hallo,

ja daran hatte ich auch gedacht aber dann muesste ich ja nach dem updaten immer diese Datei aendern.

Ich wollte einfach einen Ordner haben, worauf andere User Zugriff haben.

Geht das denn ueberhaupt so wie ich mir das denke?
 
Jein - Ordner mit Zugriffsrechten ja, aber dann wohl nur für ALLE in diesem Ordner befindlichen Datein - so glaube ich.

Man möge mich verbessern ...
 
Keine ahnung was für nen anbieter Du hast. Schlagworte düfrten Index und evtl htaccess sein.
Entweder kannst Du das bei Deinem Anbieter im Webfrontend einstellen oder Du machst sowas:
http://kb.mediatemple.net/questions/18/Making+directories+browsable,+solving+403+errors

oder Du machst ne php Datei mit folgenden Inhalt.
PHP:
Index of %s
',$directory,$directory);
printf('');
printf('
');
printf('  ');
printf('  Name
'); printf('  Last Modified
'); printf('  Size
'); printf('
'); printf('
------------------------------------
'); function ftype($fname) { if (filetype($fname) != "dir") { ereg(".*\.([A-Za-z0-9]{0,4})$",$fname,$rtn); switch ($rtn[1]) { case "aif" : { $img = "sound2"; break; } case "aiff" : { $img = "sound2"; break; } case "bin" : { $img = "binary"; break; } case "cgi" : { $img = "script"; break; } case "dvi" : { $img = "dvi"; break; } case "exe" : { $img = "binary"; break; } case "gif" : { $img = "image2"; break; } case "gz" : { $img = "compressed"; break; } case "hqx" : { $img = "binhex"; break; } case "htm" : { $img = "text"; break; } case "html" : { $img = "text"; break; } case "jpg" : { $img = "image2"; break; } case "mov" : { $img = "movie"; break; } case "mp3" : { $img = "sound2"; break; } case "mpg" : { $img = "movie"; break; } case "pdf" : { $img = "pdf"; break; } case "php" : { $img = "script"; break; } case "php3" : { $img = "script"; break; } case "phtml" : { $img = "script"; break; } case "png" : { $img = "image2"; break; } case "shtm" : { $img = "text"; break; } case "shtml" : { $img = "text"; break; } case "sit" : { $img = "compressed"; break; } case "tar" : { $img = "tar"; break; } case "txt" : { $img = "compressed"; break; } case "wav" : { $img = "sound2"; break; } case "zip" : { $img = "compressed"; break; } default : { $img = "unknown"; break; } } } else { $img = "dir"; } return($img.".gif"); } function fsize($fname) { $set = 0; $ext = array(" Bytes"," kB","MB","GB","TB"); $objsize = filesize($fname); while ($objsize >= pow(1024,$set)) ++$set; $objsize = round($objsize/pow(1024,$set-1)*100)/100 . $ext[$set-1]; return $objsize; } printf('
'); printf(''); printf('  {Parent Directory}
'); printf('   
'); printf('   
'); for ($dobj=opendir('.');$listing[] = readdir($dobj);); closedir($dobj); asort($listing); for(reset($listing);list($key,$object) = each($listing);) { if ($object != "" && $object != "." && $object != ".." && $object != basename($PHP_SELF)) { printf('
'); printf('',ftype($object)); printf('   {%s}
',$object,$object); printf('  %s
',date("d-M-Y H:i", filectime($object))); printf('  %s
',fsize($object)); } } ?>

------------------------------------
Port 80
 
Das habe ich mir mal geschrieben, einfach in eine index.php Datei reinkopieren (einfach ein Textdokument erstelle und den Namen sowie die Endung anpassen):
PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<title>Dateiliste</title>
		<meta http-equiv="content-type" content= "text/html; iso-8859-1">
	</head>
<body style="font-family:Verdana;">
<?php
$ip = $_SERVER['REMOTE_ADDR'];
############Dateiliste###############
$ordner = "./";
echo "<h3>Dateiliste:</h3>";
echo "<table style=\"font-size:12px;text-align:left;background-color:#aaaaaa;\" class=\"textnorm\" border=\"1\" summary=\"Liste\" cellspacing=\"0\" cellpadding=\"5\">
		<tr>
			<th>Dateiname</th>
			<th>Dateigröße in KByte:</th>
			<th>Typ:</th>
		</tr>";
		$zaehler = "1";

		$do = opendir($ordner);
		$f = array();
		while (false !== ($file = readdir($do)))
		{
		    if (!preg_match('/^.{1,2}$/',$file))
		    {
		    	$f[] = $file;
		    }
		}
		closedir($do);
		ksort($f);
		foreach($f as $file)
		{
			$groesse = filesize("$ordner$file");
			$groesse = round($groesse /1024, 1);

			$split = explode(".", $file);
			$end = $split[count($split)-1];
			if($end != "htaccess") //  && $end != "php"
			{
				echo "<tr " . (($zaehler % 2) ? " style=\"background-color: #f0f0f0;\"" : " style=\"background-color: #e1e1e1;\"") . ">\n";

				echo "<td><a href=\"$file\">$file</a></td>\n";
				echo "<td>$groesse</td>\n
				      <td>$end</td></tr>\n";
				$zaehler = $zaehler+1;
				$groesse_gesamt = $groesse_gesamt+$groesse;
			}
		}
echo "<tr><th>Gesamtgröße:</th><th>$groesse_gesamt</th><td> </td></tr></table>";
?>
	</body>
</html>

In der Zeile mit
PHP:
if($end != "htaccess") //  && $end != "php"

Kannst du einstellen, welche Dateiarten nicht angezeigt werden sollen. In diesem Fall wird alles ausgegeben, außer .htaccess Dateien.

#Edit: Unterordner gibt dieses Script auch mit aus, was aber für mich verschmerzbar war ;)
 
Zuletzt bearbeitet:
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh