Probleme mit Links bei einer Drupal-Installation auf unterschiedlichen Domains.
am 22.05.2014 - 00:06 Uhr in
Hallo zusammen!
Ich habe eine Installation auf einem Testserver laufen mit der Domain: myurl.de/drupal
Die gleiche Installation habe ich auch auf einem zweiten Server mit der Domain: kunde.de
Mein Problem: Wenn ich auf dem ersten Server einen Link setzte mit dem Ziel "/meineseite" geht dieser logischerweise zur Seite: myurl.de/meineseite (was unerwünscht ist, da er zu "myurl.de/drupal/meineseite" gehen sollte).
Der gleiche Link läuft auf dem zweiten Server natürlich einwandfrei und ich lande bei "kunde.de/meineseite".
Gibt es irgendeinen Weg, die Links auf beiden Servern zum laufen zu bringen?
Absolute URLs sind ja leider auch keine Alternative.
Vielen Dank und Grüße!
- Anmelden oder Registrieren um Kommentare zu schreiben
In der settings.php kannst Du
am 22.05.2014 - 07:12 Uhr
In der settings.php kannst Du den Wert $base_url auf den Unterordner setzen:
$base_url = 'http://www.myurl.de/drupal';
Darauf achten, keinen Backslash ans Ende zu setzen, also
$base_url = 'http://www.myurl.de/drupal/';
wäre falsch
tobi-berlin schrieb In der
am 22.05.2014 - 07:33 Uhr
In der settings.php kannst Du den Wert $base_url auf den Unterordner setzen:
$base_url = 'http://www.myurl.de/drupal';
Das nützt eigentlich nur etwas, wenn man dann auch die Globale
$base_url
im Pfad nutzt.Hast du in der .htaccess folgendes beachtet?:
# Modify the RewriteBase if you are using Drupal in a subdirectory or in a
# VirtualDocumentRoot and the rewrite rules are not working properly.
# For example if your site is at http://example.com/drupal uncomment and
# modify the following line:
RewriteBase /drupal
Wenn die Links in Menüs
am 22.05.2014 - 08:05 Uhr
Wenn die Links in Menüs erstellt werden oder durch
url()
an anderer Stelle, hat die $base_url Einstellung sehr wohl Einfluss... htaccess sorgt für die richtige Weiterleitung, nicht für die richtige "Konstruktion" bei der Erstellung der Links durch DrupalIch hätte vielleicht
am 22.05.2014 - 16:42 Uhr
Ich hätte vielleicht dazusagen müssen, dass es sich um manuell geschriebene Links im Text handelt.
Also wäre die htaccess-Methode die passende?
Oder geht ich da am besten vor?
Sowas wie das folgende gibt es nicht zufällig für Links im CK-Editor stehen, oder?
<a href="$basepath/meineseite"> ....
Im Menü etc. macht mir das momentan keine Probleme. Das scheint automatisch richtig zu funzen.
Vielen Dank für eure Antworten!!!
Ich hätte vielleicht
am 22.05.2014 - 16:43 Uhr
Ich hätte vielleicht dazusagen müssen, dass es sich um manuell geschriebene Links im Text handelt.
Also wäre die htaccess-Methode die passende?
Oder geht ich da am besten vor?
Sowas wie das folgende gibt es nicht zufällig für Links im CK-Editor stehen, oder?
<a href="$basepath/meineseite"> ....
Im Menü etc. macht mir das momentan keine Probleme. Das scheint automatisch richtig zu funzen.
Vielen Dank für eure Antworten!!!
PS: Sorry für den Doppelpost...
t2k schrieb Ich hätte
am 22.05.2014 - 17:47 Uhr
Ich hätte vielleicht dazusagen müssen, dass es sich um manuell geschriebene Links im Text handelt.
das ist schon klar, bei sym- Links tritt das Problem nicht auf.
$GLOBALS['base_path']
ist eigentlich immer verfügbar, das sollte auch im Editor (Quelltextmodus) funktionieren, wenn PHP (Core Module) aktiviert ist und das Eingabeformat PHP eingestellt ist. Den Link müsstest dann folgendermaßen schreiben:<a href="<?php $GLOBALS['base_path']?>/meineseite">Linktext</a> // Ob der / nötig ist, musst du mal probieren
Versuch doch einfach mal das Umschreiben per .htaccess wie oben beschrieben.
Vielen Dank für all eure
am 23.05.2014 - 12:00 Uhr
Vielen Dank für all eure Antworten!!!
Die Lösung mit dem PHP-Textformat und dem base_path klappt ganz gut.
Das Problem daran ist, dass ich das einem Redakteur nicht zumuten kann.
Ich bin gestern auf das Modul https://drupal.org/project/pathologic gestoßen.
Damit klappt das in den Texten sehr gut!
Ein letztes Problem was bleibt, sind Links die in einem Views-Block gesetzt sind.
Dort sind in einem "Global: Benutzerdefinierter Text"-Feld Links. Hier greift leider weder Pathologic, noch kann ich hier php benutzen.
Hat vielleicht noch jemand einen Tipp dazu?
Für die Drupal - Installation
am 23.05.2014 - 17:30 Uhr
Für die Drupal - Installation im Unterverzeichnis kannst du Links von Hand generell auch immer so setzen:
<a href="../meineseite">...</a>
Das sollte in der View klappen.
Zum Einen hilft vielleicht
am 26.05.2014 - 08:14 Uhr
Zum Einen hilft vielleicht noch dieses Modul: https://drupal.org/project/intlinks
Ansonsten gibt es auch für Views ein PHP Feld (https://drupal.org/project/views_php)
Allerdings muss bei beiden Modulen sehr auf Caching geachtet werden, das kann schnell Performance-Probleme bringen
Tipp zu Views: Nutze doch lieber die Funktion "Ergebnisse umschreiben" bei den Views-Feldeinstellungen und hier "Ausgabe als Link" (irgendwie so heißen die). Hier kannst Du einen Drupal-Pfad eingeben, Views übernimmt es dann entsprechend der
$base_path
Einstellungen, den richtigen Link zu erstellen.