Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Linux Apache VirtualHost PHP wird nicht geladen

Frage Linux Apache Server

Mitglied: mexx

mexx (Level 2) - Jetzt verbinden

02.01.2014, aktualisiert 15:15 Uhr, 3064 Aufrufe, 31 Kommentare, 1 Danke

Hallo,

ich verwenden einen Apache mit Wordpress. Ich habe, um nicht www.meine-Domain.de/wordpress einzugeben, einen VirtualHost eintrag erzeugt.

So sieht er aus.
01.
NameVirtualHost *:80 
02.
 
03.
<VirtualHost *:80> 
04.
 ServerName www.meine-domain.de 
05.
 ServerAlias www.meine-domain.de 
06.
 DocumentRoot "/volume1/web/wordpress" 
07.
 <Directory /volume1/web/wordpress> 
08.
  php_admin_flag engine on 
09.
  AllowOverride AuthConfig FileInfo 
10.
  Order allow,deny 
11.
  allow from all 
12.
 </Directory> 
13.
</VirtualHost>
Der Eintrag funktioniert, da beim Aufrufen von www.meine-domain.de die Wordpress Seite angezeigt wird - ABER - die Seite wird "unformatiert" geladen. Ich vermute, dass das PHP nicht geladen wird. Wahrscheinlich fehlt im VirtualHost Block noch ein Eintrag dafür oder eventuell Rechte?

Was muss hier noch gemacht werden?

Gruß,
mexx
31 Antworten
Mitglied: certifiedit.net
02.01.2014 um 15:13 Uhr
Hallo,

nein, du wirst einfach die css Verweise neu setzen müssen. Diese laufen nun eben nicht mehr auf domain.de/wordpress sondern auf domain.de/$random.
Bitte warten ..
Mitglied: mexx
02.01.2014 um 15:14 Uhr
Das war mal eine schnelle Antwort. Ich ändere die CSS Verweise im Wordpress? Oder anders, wo ändere ich Sie?
Bitte warten ..
Mitglied: certifiedit.net
02.01.2014 um 15:17 Uhr
Poste mal bitte temporär nen Link zu deiner Seite.
Bitte warten ..
Mitglied: mexx
02.01.2014 um 15:27 Uhr
Ich habe Dir eine PN geschickt.
Bitte warten ..
Mitglied: Lochkartenstanzer
02.01.2014, aktualisiert um 15:53 Uhr
Zitat von mexx:

Das war mal eine schnelle Antwort. Ich ändere die CSS Verweise im Wordpress? Oder anders, wo ändere ich Sie?

Du könntest auch einfach einen link "wordpress -> ." im wordpress-verzeichnis erzeugen.

lks

PS: Aber dran denken, dem apache zu sagen, daß er dem link folgen darf.

Nachtrag
Bitte warten ..
Mitglied: certifiedit.net
02.01.2014, aktualisiert um 15:58 Uhr
Exakt das war das Problem, du verweisst auf die IP http://192.1xx.x.x/wordpress ändern das und es sollte gehen und nächstes mal keine Harten Verweise mehr.
Bitte warten ..
Mitglied: mexx
02.01.2014 um 16:00 Uhr
Ihr hängt mich total ab.

In den CSS Dateien steht keine Angabe der URL. Ich verstehe die Aufforderung CSS Verweise ändern nicht und was mir ein Link im Wordpress Ordner bringen soll verstehe ich auch nicht.
Bitte warten ..
Mitglied: mexx
02.01.2014 um 16:04 Uhr
Okay, jetzt sind wir bei einander. Dann reden wir aber nicht von Apache Konfigurationen, sondern von Wordpress Konfigurationen.

Damit meine Seite per externer URL erreichbar ist, habe ich mich an diese Anleitung gehalten.

http://codex.wordpress.org/Changing_The_Site_URL

Ich habe nur den Eintrag define('WP_SITEURL','http://example.com'"); geändert. Das hat zur Folge, dass im Wordpress unter Einstellungen -> Allgemein unter Seiten-Adresse (URL) die externe URL drin steht. Welchen Eintrag muss ich noch ändern, damit restliche Verweise greifen?
Bitte warten ..
Mitglied: certifiedit.net
02.01.2014 um 16:09 Uhr
Aufgrund deines jetztigen Systems vermute ich doppelte Probleme (Das Kopfbild bitte nie Hardcoden) Da verweisst du weiterhin auf die interne IP.Was den Rest angeht: Verschiebe am besten das ganze Wordpress Verzeichnis in ./wp/ und lege darauf dein ReWrite und vHost. Damit sollte es gehen.
Bitte warten ..
Mitglied: mexx
02.01.2014 um 16:16 Uhr
Im code selbst ändere ich nichts. Ich vermute ich mache etwas beim Ändern der Seiten URL falsch. Die Verweise auf interne IP Adressen stammen nicht von mir, sondern vom wordpress. Da muss ich noch mal in die Tiefe.

Den Ordner ./wp gibt es bei mir nicht. Deine Aussage impliziert, dass es Ihn schon gibt?! O.o Was sollte das ändern, wenn ich den vHost auf ein neues Verzeichnis lege?
Bitte warten ..
Mitglied: certifiedit.net
02.01.2014 um 16:31 Uhr
Nein. erstelle wp
schiebe Wordpress in wp
erstelle vhost mit ziel auf wp ;)

Dann sollte alles so sein,wie du es willst (zu99%)
Bitte warten ..
Mitglied: mexx
02.01.2014 um 16:34 Uhr
Aber dann ändert sich doch nichts, ausser der Name des Ordners. Warum glaubst Du, dass der Ordnername wp etwas positives bewirkt?
Bitte warten ..
Mitglied: certifiedit.net
02.01.2014 um 17:11 Uhr
Probier es mal bitte über die Methode ;)
Bitte warten ..
Mitglied: mexx
02.01.2014 um 17:14 Uhr
Der Ordner muss unter /web stehen? Auf der selben ebene wie wordpress nur eben wp?!
Bitte warten ..
Mitglied: certifiedit.net
02.01.2014, aktualisiert um 17:24 Uhr
bisher (denke ich)

webroot/wordpress

zusätzlich
webroot/wp/

und dann den o.g. Ordner nach
webroot/wp/ verschieben daher
webroot/wp/wordpress

auf webroot/wp/ setzt du den vHost.
Bitte warten ..
Mitglied: Lochkartenstanzer
02.01.2014, aktualisiert um 17:31 Uhr
Zitat von mexx:

Ihr hängt mich total ab.

In den CSS Dateien steht keine Angabe der URL. Ich verstehe die Aufforderung CSS Verweise ändern nicht und was mir ein Link
im Wordpress Ordner bringen soll verstehe ich auch nicht.

Hast Du mal versuch tin dem worppress Verzeichnis einfach mal ein :

 ln -s wordpress . 
zu machen?

Wenn das vorher mit www.meine-Domain.de/wordpress geklappt hat, sollte es hinterher auch klappen. Ist zwar ein "q&d-hack", sollte aber auf die schnelle helfen.

lks
Bitte warten ..
Mitglied: certifiedit.net
02.01.2014 um 17:48 Uhr
Er wird auf dem Ding nicht per Shell arbeiten (Annahme ;))
Bitte warten ..
Mitglied: kingkong
02.01.2014 um 18:29 Uhr
Entweder ich habe jetzt irgendetwas nicht berücksichtigt - oder ihr
Der TE hat seinen VirtualHost eingerichtet, damit in seinen URLs kein 'wordpress' mehr erscheint. Wenn er allerdings diesen wordpress-Ordner jetzt wieder in das webroot des neuen VHost verschieben soll, ändert sich daran doch mal schlicht gar nichts. Oder doch?

@TE: Wenn es unformatiert erscheint, dann liegt das ganze in der Regel tatsächlich daran, dass die Dateien, die zur Definition des Aussehens notwendig sind, nicht gefunden werden. In der Regel richtet man es so ein, dass im Quellcode im Abschnitt zwischen <head> und </head> ein Element wie z.B. <base href="http://www.example.org;>" erscheint, und alle Bilder (bzw. allgemeiner Dateien) und Verlinkungen auf andere Seiten nur noch relativ verknüpft werden, d.h. dass da der Anfangsteil weggelassen wird, der schon im href-Attribut des base-Tag steht, weil sich der verbleibende Teil auf dieses base bezieht.

Für eine css-Datei sieht das ganze dann z.B. so aus: (wenn Du in den Quelltext der Seite schaust, wirst Du sowas entdecken)
Mit absolutem Pfad: <link rel="stylesheet" type="text/css" href="http://192.168.32.5/css/stylesheet.css" />
Aufgeteilt auf Basis und relativen Pfadwird: <base href="http://192.168.32.5;>" und <link rel="stylesheet" type="text/css" href="/css/stylesheet />.
Der Browser weiß dann, dass er die Links zusammen bauen muss, wenn er die Dateien oder Seiten erreichen will, die sich dahinter verbergen. Und Du musst die Links nicht ändern, wenn Du die ganze Wordpress-Installation verschiebst oder die Adresse änderst, unter der sie zu erreichen ist.

Der Vollständigkeit halber sei übrigens noch gesagt, dass es oft sogar ohne base-Tag geht - in diesem Fall nimmt der Browser dann wohl einfach die Adresse, die er gerade aufgerufen hat, als Basisadresse an.

Ich hoffe, das hilft Dir ein bißchen zum Verständnis - und wenn Du es schon wusstest, kannst Du es ja einfach ignorieren...
Bitte warten ..
Mitglied: certifiedit.net
02.01.2014 um 22:20 Uhr
Nein, die Daten liegen dann unter wp der virtualhost verweisst auf wp, daher ist der pfad unsichtbar. Nur wordpress existiert als unterverzeichnis nach wie vor. Daher keine Zerstückelten Verweise -> alles geht.
Bitte warten ..
Mitglied: mexx
03.01.2014 um 09:37 Uhr
Ich habe mich an Deine Anweisung gehalten. wordpress befindet sich nun unterhalb von webroot/wp

Beim Aufruf der Wordpress Verwaltung erhalte ich nun diese Fehlermeldung.

Warning: require(/var/services/web/wordpress/wp-blog-header.php): failed to open stream: No such file or directory in /volume1/web/wordpress/index.php on line 17 Fatal error: require(): Failed opening required '/var/services/web/wordpress/wp-blog-header.php' (include_path='.:/usr/syno/php/lib/php') in /volume1/web/wordpress/index.php on line 17
Bitte warten ..
Mitglied: mexx
03.01.2014 um 10:04 Uhr
Ich denke mein primäres Problem sind die verweise im Quelltext. Die von Wordpress erstellte Seite trägt an vielen Stellen eine lokale IP Adresse. Das kann so nicht funktionieren. Ich habe diese Anleitung gefunden, um die IP Adresse in die öffentliche zu ändern.

http://codex.wordpress.org/Changing_The_Site_URL

Ich finde den Weg aber sehr aufwendig und ich kann mir einfach nicht vorstellen, dass das der richtige Weg ist. Immerhin müsste das doch dann jeder Admin machen, denn ein Server ist ja immer Zweibeinig unterwegs. Ich will nicht glauben, dass jeder Admin die externe IP über den beschriebenen Weg in Wordpress einbinden muss.
Bitte warten ..
Mitglied: certifiedit.net
03.01.2014 um 11:53 Uhr
Ich habe bisher nicht viel mit Wordpress zu tun gehabt, aber ich vermute dass dir hier direkt zu Beginn ein Einrichtungsfaux-pas unterlaufen ist. Sind denn schon größere Datenmengen in der Installation? Wenn nicht: Schmeiss es runter und Installier es neu.
Bitte warten ..
Mitglied: mexx
03.01.2014 um 12:00 Uhr
Den Weg werde ich auch bald gehen, aber vielleicht fällt Dir hierzu was ein. Das Ändern der URL scheint bei Wordpress tatsächlich etwas eklig zu sein, aber nicht so aufwändig wie gedacht. Siehe hier:

http://www.scriptease.de/phpmyadmin-anpassung-nach-wordpress-umzug/

http://faq.wpde.org/wordpress-url-aendern/


Obwohl die Links in der Datenbank, welche ich mit PHPMyAdmin einsehen kann alle stimmen, also http://meine-domain.de/wordpress/artikel... hat die Änderung der Seiten URL zur Folge, dass der Link meine Domain zwei mal enthält. Also so http://meine-domain.de/wordpress/meine-domain.de/wordpress/artikel..

Dieser Link steht so nicht in der Datenbank. Auch nicht im Quelltext. Das verstehe ich nicht.
Bitte warten ..
Mitglied: Lochkartenstanzer
03.01.2014 um 12:33 Uhr
Zitat von certifiedit.net:

Er wird auf dem Ding nicht per Shell arbeiten (Annahme ;))

macht nichts, dann benuzt man eben php:

 symlink("myOriginalFileOrDirectory", "mySymbolicLink"); 
lks
Bitte warten ..
Mitglied: mexx
03.01.2014 um 13:14 Uhr
Zitat von Lochkartenstanzer:

> Zitat von certifiedit.net:
>
> Er wird auf dem Ding nicht per Shell arbeiten (Annahme ;))

macht nichts, dann benuzt man eben php:

 symlink("myOriginalFileOrDirectory", "mySymbolicLink"); 
lks

Doch doch, ich bin per SSH auf der Maschine drauf. PHP und Web (CMS) sind nicht meine stärke. Mir sagt dein symlink Befehl nichts. Was kann/soll ich damit bewirken?
Bitte warten ..
Mitglied: Lochkartenstanzer
03.01.2014, aktualisiert um 14:14 Uhr
Zitat von mexx:

Doch doch, ich bin per SSH auf der Maschine drauf. PHP und Web (CMS) sind nicht meine stärke. Mir sagt dein symlink Befehl
nichts. Was kann/soll ich damit bewirken?


So wie ich Dein problem verstanden habe, hast Du zuerste deine webseite mit
 http://domainname/wordpress 
aufgebaut und alles hat funktioniert.

Dann hast du den documentroot eine Ebene tiefer angesetzt, weil du nur
 http://domainname/ 
haben wolltest. Allerdigns haben dann die Pfade nciht mehr gepaßt, weil das "wordpress" in dem Pfad gefehlt hat.

Nun war mein Vorschlag, wohlgemerkt ein quick & dirty - hack, einfach einen link im documentroot zu setzen.

Also:
cd /volume1/web/wordpress 
ln -s . wordpress

in der shell eintippen und dann mal schauen, ob es geht. durch den link ist es möglich auf das verzeichnis sowohl mit http://domainname/ als auch mit http://domainname/wordpress zuzugreifen. dadurch sollte der Pfad wieder eingiermaßen passen.

Wie gesagt, ein quick'ndirty-hack der auf die schnelle helfen soll.

lks

PS: das
 symlink("myOriginalFileOrDirectory", "mySymbolicLink"); 
, in deinem Fall also
 symlink("/volume1/web/wordpress", "/volume1/web/wordpress/wordpress"); 
mußt einfach in ein php-programm auf dem server eingebaut werden. dann kannst du es mit z.B. mit http://domainname/pfad/symlink-erzeugen.php zur Ausführung bringen und damit den link erzeugen, auch wenn Du keinen Shellzugriff hast.

PP: wenn man keinen ssh-Zugriff hat, kann man immer noch zut Not die PHP-Shell verwenden.
Bitte warten ..
Mitglied: certifiedit.net
03.01.2014 um 13:58 Uhr
ich geb dir prinzipiell Recht. Nur in der Zeit, in der er hier bereits herumdoktort kann man zig^n Wordpressinstallationen hochziehen und ist weiter als wir hier.
Bitte warten ..
Mitglied: Lochkartenstanzer
03.01.2014 um 14:16 Uhr
Zitat von certifiedit.net:

ich geb dir prinzipiell Recht. Nur in der Zeit, in der er hier bereits herumdoktort kann man zig^n Wordpressinstallationen
hochziehen und ist weiter als wir hier.

Klar sauber neu aufsetzen ist hier sinnvoller, Mein Vorschlag war nur dazu gedacht, "schnell" Abhilfe zu schaffen, wenn er in Zeitnot gewesen wäre. Wär es nur was für den Übergang, bis man die saubere Version hochgezogen hat.

lks
Bitte warten ..
Mitglied: mexx
03.01.2014 um 14:28 Uhr
ZWISCHENSTAND FÜR ZUKÜNFTIGE LESER
Meine Herren, vorab vielen Dank für Ihre Geduld.

Es ist nicht ganz so komplex, wie Sie beide denken. Ich hatte bei der Wordpressinstallation nicht die Möglichkeit die Seiten URL zu konfigurieren. Die Installation hat einfach die LAN IP des Servers genommen. Eine Veröffentlichung ist damit natürlich nicht möglich, da alle Links auf die LAN IP verwiesen. Der einzig mir bekannte weg, auch nach langer Recherche, ist ein SQL Command. Damit könne man die Links auf eine öffentliche Adresse umschreiben.

Hier die SQL: UPDATE wp_options SET option_value = replace(option_value, 'http://192.168.xxx.xxx/wordpress'", 'meine-domain.de/wordpress');

Dieser Befehl funktionierte sehr gut. Nun bleiben aber noch zwei Probleme.

1. Menüs haben als Link nicht "meine-domain.de/wordpress/seite" sondern "meine-domain.de/wordpress/meine-domain.de/wordpress/seite" also 2 mal mein-domain.de/wordpress. Im Quelltext steht das aber nicht.

2. Das ursprüngliche Problem, der fehlenden Formatierung beim Verwenden eines virtuellen Host in der apache Konfiguration, führe ich die fehlerhaften Seiten URLs hin. Lokale IPs haben da nichts zu suchen.

Wenn ich Problem 1. behoben habe, denke ich Problem 2 schnell lösen zu können. Im Augenblick habe ich aus Backups den first install Zustand zurückgeholt. Es gibt im Augenblick keine virtuellen Host und keine andere Konfiguration bis auf den update Befehl zum Ändern der Seiten URL.

Hat jemand eine Idee, warum diese Änderung das in Punkt 1 beschriebene Problem verursacht?
Bitte warten ..
Mitglied: mexx
06.01.2014 um 18:39 Uhr
LÖSUNG
1. In meinen Fall wird bei der Installation von Wordpress keine Konfiguration während der Installation angezeigt. Die Installation nimmt sich die URL vom Server als HOME und SITE URL. Wenn ich die Installation also mit der lokalen LAN IP des Servers durchführe, ist SITE UND HOME URL die LAN IP. Bei der Installation per öffentlicher URL oder WAN IP, so stimmen die Einträge.

2. In meinen Fall habe ich im Admin Menü von Wordpress, die SITE URL von www.meine-domaine.de/wordpress auf www.meine-domain.de gelegt und den Inhalt aus wordpress im DocumentRoot von Apache, in meinen Fall /volume1/web kopiert.

3. Nach dieser Änderung ist in der wp-config.php der Eintrag define('RELOCATE', true) notwendig, um die Änderungen der Adresse in alle Seiten durchzureichen.

An dieser Stelle vielen Dank an alle helfenden und besonders certifiedit! ;)
Bitte warten ..
Mitglied: certifiedit.net
06.01.2014 um 19:00 Uhr
gerne, jetzt noch als gelöst und ggf als zur Lösung beigetragen markieren und einen schönen Abend.
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Apache Server
gelöst Apache und PHP auf Ubuntu 12.04.5.TLS installieren (8)

Frage von laster zum Thema Apache Server ...

CMS
PHP - WordPress auf Apache schneller als auf IIS? (13)

Frage von Rene1976 zum Thema CMS ...

PHP
gelöst Apache PHP Dienst in Windows Zugriffrechte auf Netzwerklaufwerk (4)

Frage von thomas.w zum Thema PHP ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...