Automatischen Script aufruf
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anweisung
apache
browser
code
datei
einsetzen
eintragen
http
indianer
inhalt
leiste
modul
nutzen
option
ordner
pfad
schleife
server
test
url
-
Hallo Leute,
Ich habe ein Server und dort liegen haufenweise Dateien.
Nun möchte ich gerne das quasi automatisch auf jeder seite ein code ausgeführt wird.
welches so aussieht
<link rel="stylesheet" type="text/css" href="http://www.******.de/style.css" /> <!-- ### Browser-Leiste Start ### --> <div class="durd"><div class="lste"><center>HIER DER INHALT, EIN LINK, EIN BILD ODER WAS AUCH IMMER...</center></div></div> <!-- ### Browser-Leiste Ende ### -->
ich habe gelesen das wäre via auto_prepend_file möglich
doch sollte ich dort den link zu dieser datei eintragen und meine apache2 neustarte
bekomme ich immer die 500er meldung
jetzt ist meine frage ist es möglich diesen code oben automatisch auf jeder seite zu laden?
mfg jean -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Wo hast Du diese Option gesetzt ? Sie gehört in eine "php.ini" oder eine .user.ini (siehe Handbuch auf php.net). Wenn Du sie in einer ".htaccess" verwendest und Dein Apache PHP nicht als Modul sondern als CGI/FastCGI Handler einbindet, führt die Option zu einem Konfigurationsfehler.
H.
Edit: Mal abgesehen davon, das sieht aus wie nacktes HTML; auto_prepend_file wird nur auf php-Scripte angewandt und setzt den Datei-Inhalt vor das gesamte Script. Das ist bei diesem Inhalt ganz sicher nicht was Du willst. Und ausserdem gehört das '<link>' in den '<head>' und das '<div>' in den <body> in HTML.
Beitrag zuletzt geändert: 4.12.2015 23:16:18 von hddg -
Ich würde dir da eher vorschlagen, ein PHP-Script für die Lösung zu benutzen, wenn das nicht geht, was du tust.
Wenn du PHP kannst, solltest du doch wissen, dass du ne Schleife laufen lassen kannst, die bei jeder PHP-Datei die Datei einbindet (include, required etc.) + Code-Schnipsel einfach durch eine Variable ausgeben. Problem gelöst, und dann noch mit relativ einfachen PHP :)
Als kleinen Denkanstoß (ab PHP 5):
$dateienr = scandir('verzeichnisname'); // Hier wird der Ordner namens verzeichnisname ausgelesen
(mit Foreach könntest du jetzt quasi alle Dateien ausgeben, wird hier jz. war nicht benötigt). -
Probiere es mal so:
(Muss in eine PHP Datei sein!)<?php require("Hier den Pfad"); ?>
Du gibst dort den Pfad ein und das, was in der Datei ist wird dort eingefügt sein.
Ich hoffe ich konnte dir helfen.
Beitrag zuletzt geändert: 2.4.2016 0:29:55 von cybercrack -
Es muss aber hierfür noch eine andere Möglichkeit geben. Ich war mal bei einem kostenlosen Webspaceanbieter, der auf jeder Nutzerseite einen Werbecode eingefügt hat, egal ob es sich um PHP oder reines HTML handelt. Ich habe damals mal ein wenig recherchiert und bin hier
http://freecode.com/projects/mod_layout
auf das Apache Modul mod_layout gestoßen. Das war aber damals schon recht alt. Ich weiß nicht ob man das mit aktuellen Apache Versionen einsetzen kann. Es gibt allerdings hier
https://www.apachehaus.com/cgi-bin/download.plx
mod_layout für Apache 2.4 unter Windows.
Möglicherweise kann man auch das Standardapache Modul mod_ext_filter in Verbindung mit sed nutzen oder sogar mod_substitute
Edit:
Falls auf deinem Apache-Server Apache 2.4 installiert ist, so kann du auch mod_sed nutzen. Das funktioniert so. Angenommen, du hast ein HTML-Datei mit
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>Test mod_sed</title> </head> <body> Test mod_sed </body> </html>
und in der Apache-Konfiguration
<Directory "/verzeichnis"> AddOutputFilter Sed html OutputSed "s/<\/head>/<link rel=\"stylesheet\" type=\"text\/css\" href=\"http:\/\/www.******.de\/style.css\" \/><\/head>/g" </Directory>
dann sieht die ausgelieferte HTML-Datei so aus:
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>Test mod_sed</title> <link rel="stylesheet" type="text/css" href="http://www.******.de/style.css" /></head> <body> Test mod_sed </body> </html>
Anmerkungen:
- es kann mehr als eine OutputSed-Anweisung geben
- Zeichen wie " und / müssen maskiert werden zu \" und \/
Die vollständige Doku zu mod_sed gibt es hier:
http://httpd.apache.org/docs/2.4/mod/mod_sed.html
Beitrag zuletzt geändert: 4.4.2016 0:21:36 von mein-wunschname -
Welchen Indianer verwendest du denn?
Ab 2.3 steht dir das erwähnte mod_sed zur Verfügung, was für dich in dem Fall wohl das einfachste und praktischte ist. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage