Hallo, Auf meinem Raspberry läuft Apache2 und ich kann leider nur die Testseite von PHP öffnen. Diese wird richtig angezeigt. Als ich eine weitere PHP Seite öffnen wollte welche auch HTML enthält bleibt der Browser weiß und nichts passiert. Im Error Log steht nur access denied und der Pfad der PHP Datei. Die Datei ansich sollte funktionieren da diese andere user erfolgreich ausführen konnten. Obwohl die Datei HTML enthält habe ich sie so abespeichert phpversuch.php In die URL hab ichs so eingegeben localhost/phpversuch.php Wie schon gesagt die Testseite funktioniert, aber diese besteht nur aus PHP und es ist kein HTML Code enthalten. Die Index.html geht auch. Wäre nett wenn jemand einen Tipp hätte :)
Marco17 schrieb: > Wäre nett wenn jemand einen Tipp hätte einfach mal die Rechte richtig vergeben? Wenn access denied kommt, wird das wohl einen Grund haben.
Marco17 schrieb: > Im Error Log steht nur access denied Ach komm. Übersetzen wir die beiden Worte in unsere Sprache: "Zugriff verweigert". → Apache kann auf deine Dateien nicht zugreifen. * Wo hast du die Datei gespeichert? * Wie sehen die Rechte aus?
Ich hab sie unter /var/www/html gespeichert. Dort liegt ebenfalls die Test.php <----die funktioniert aber. Die PHP Datei was nicht funktioniert habe ich vom USB Stick runter gezogen und in /var/www/html gespeichert. Warum kann ich auf die eine Datei zugeifen und auf die andere nicht. Wenn ich die Endung der PHP auf HTML ändere kann ich zugreifen. es wird halt nur text angezeigt. Danke
Bei einem Berechtigungsproblem sollte Apache die "403 Forbidden" Seite senden. bei einer Weissen Seite würde ich auf einen 500 Fehler tippen. Den Fehlercode canst du im Networktab deines Browsers nachsehen, bei Firefox und Chrome mit F12 zu finden. Alternativ kann man auch curl oder wget nehmen. Ich würde auf jeden fall in php error_reporting un display_errors setzen. Das geht in /etc/php/apache*/php.ini oder mit php_flag im apache vhost oder einer .htaccess datei.
Setze doch einmal den Eigner der Datei auf www-data, bzw. den ausführenden User. Wurde doch nun schon 3 mal gesagt. chown ist das Zauberwort.
Die bestehende php Seite wird auch als localhost/xxxx.php aufgerufen ? Dann zeig doch mal die php datei. Resp nimm mal eine minimalistische : <?php var_dump $SERVER; echo('hallo'); ?>
chmod schrieb: > chmod +x wozu? php werden nicht von den Shell ausgeführt. Sie haben auch kein Shebang.
Daniel A. schrieb: > Bei einem Berechtigungsproblem sollte Apache die "403 Forbidden" Seite > senden. Eben. Ich vermute auch eher, dass sich "access denied" auf einen PHP-Befehl innerhalb des Scripts bezieht. "access denied" kommt mir allerdings etwas merkwürdig vor. In der Regel heisst das "permission denied". Aber vielleicht war der TO etwas lässig bei der Wiedergabe der Fehlermeldung. Soll der TO mal das PHP-Script und die komplette Fehlermeldung posten. Alles andere ist Spekulatius.
Oh D. schrieb: > <?php > var_dump $SERVER; > echo('hallo'); > ?> Müsste es nicht eher so sein:
1 | <?php |
2 | var_dump( $_SERVER ); |
3 | echo 'hallo'; |
4 | ?>
|
<?php /*********************************************************************** ********************* * * PROJEKT: Ausgabe der durch den Arduino generierten Temperaturwerte der letzten 12 Stunden * * ************************************************************************ ********************/ ?> <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="viewport" content="user-scalable=yes, width=device-width"> <title>ARDUINO - Aktuelle Temperatur</title> </head> <body> <table> <tr> <td width="120">Datum</td> <td width="120">Zeit</td> <td width="120">Innen</td> <td width="120">Außen</td> </tr> <?php include("var/www/html/inc/db.inc.php"); $q_data = mysql_query("SELECT DATE_FORMAT(datumzeit,'%d.%m.%Y') AS DATUM, DATE_FORMAT(datumzeit,'%H:%i') AS ZEIT, temp1, temp2 FROM arduino_temperaturen WHERE `datumzeit` >= date_sub(now(), interval 12 hour) AND `datumzeit` <= now() GROUP BY DATE_FORMAT(datumzeit, '%Y-%m-%d %H') ORDER BY datumzeit DESC") or die(mysql_error()); if(mysql_num_rows($q_data) > 0) { while($r_data = mysql_fetch_array($q_data)) { echo "<tr>\n"; echo " <td>".$r_data['DATUM']."</td>\n"; echo " <td>".$r_data['ZEIT']."</td>\n"; echo " <td>".number_format($r_data['temp1'], 2, '.', '')."°C</td>\n"; echo " <td>".number_format($r_data['temp2'], 2, '.', '')."°C</td>\n"; echo "</tr>\n"; } } else { $E = 1; $M = "Es wurden keine Temperaturwerte in der Datenbank gefunden!"; } ?> </table> </body> </html> Ist von Fluux.de Das Schreiben in die Datenbank funktioniert wunderbar LG
Marco17 schrieb: > Im Error Log steht nur access denied und der Pfad der PHP Datei. Marco17 schrieb: > <?php > include("var/www/html/inc/db.inc.php"); Im Error Log steht welcher Pfad welcher PHP-Datei? Poste bitte die exakte Fehlermeldung. Oder wartest Du lieber auf weitere Spekulationen?
:
Bearbeitet durch Moderator
> include("var/www/html/inc/db.inc.php");
ist natuerlich Quatsch. Dort muss der Weg von der Document Root stehen,
und das waere dann ueblicherweise
include '/html/inc/db.inc.php';
Oh D. schrieb: >> include("var/www/html/inc/db.inc.php"); > > ist natuerlich Quatsch. Dort muss der Weg von der Document Root stehen, > und das waere dann ueblicherweise > > include '/html/inc/db.inc.php'; Nö, dann wäre das:
1 | include($_SERVER['DOCUMENT_ROOT']."/inc/db.inc.php"); |
Besser wäre es aber, das ganze mit relativen Pfaden zu machen:
1 | include("inc/db.inc.php"); |
Frank M. schrieb: > Daniel A. schrieb: >> Bei einem Berechtigungsproblem sollte Apache die "403 Forbidden" Seite >> senden. > > Eben. Ich vermute auch eher, dass sich "access denied" auf einen > PHP-Befehl innerhalb des Scripts bezieht. "access denied" kommt mir > allerdings etwas merkwürdig vor. In der Regel heisst das "permission > denied". Aber vielleicht war der TO etwas lässig bei der Wiedergabe der > Fehlermeldung. Ich denke er hat falsche Anmeldedaten beim MYSQL Verbindungsaufbau angegeben. Dann bekommt man 'Access denied':
1 | abd@basalt ~ $ mysql -u root -h mysql |
2 | ERROR 1045 (28000): Access denied for user 'root'@'basalt' (using password: NO) |
> Soll der TO mal das PHP-Script und die komplette Fehlermeldung posten. > Alles andere ist Spekulatius. Finde ich auch.
Hallo, jetzt hät ich hier den ganzen Fehlercode Danke [Sat Jun 25 15:26:01.517122 2016] [:error] [pid 1770] [client 127.0.0.1:35328] PHP Warning: Unknown: failed to open stream: Permission denied in Unknown on line 0 [Sat Jun 25 15:26:01.517444 2016] [:error] [pid 1770] [client 127.0.0.1:35328] PHP Fatal error: Unknown: Failed opening required '/var/www/html/test1.php' (include_path='.:/usr/share/php:/usr/share/pear') in Unknown on line 0
Hallo, also wenn das der Logauszug zu einem Aufruf deiner Datei ist, dann ist das, was Du oben gezeigt hast nicht der Inhalt der Datei. vlg Timm
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.