Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

index.php?site=showdetails&id=1 -> /index/showdetails

Mehrere Domains, Domain-Umzug, neue Dateinamen, 301/302
Neues Thema Antworten
ViperTK
PostRank 1
PostRank 1
Beiträge: 6
Registriert: 06.05.2010, 20:26

Beitrag von ViperTK » 06.05.2010, 20:28

Hallo liebe Community,

ich hoffe ihr könnt mir hier helfen :).
Das Forum wurde mir nun schon von mehreren empfohlen und da ich in meinem selbstlernprozess noch zu oft an meine Grenzen stoße, hoffe ich hier Hilfen finden zu können :).

Wie im Thema schon beschrieben möchte ich gerne folgende RewriteRule irgendwie definieren, an sich klappt die Umleitung auch, aber irgendwie funktionieren dann die Stylsheets und Images nicht :/.

Ich habe folgende 3 Szenarien:

Die erste wäre, wenn es sich um eine Detailseite handelt, ist die entsprechende ID wichtig und muss mit übergeben werden.
index.php?site=showdetails&id=1 -> /index/showdetails/1

Jedoch gibt es eben auch Seiten, die einfach ohne SQL Daten auskommen und somit auch keine ID oder sonstiges benötigen.
index.php?site=aboutus -> /index/aboutus

Außerdem kann es sich auch um eine andere *.php-Datei handeln, daher benötige ich hier auch eine Variable mehr.
admincenter.php?site=user -> /admincenter/user

Es existieren also mehrere verschiedene *.php-Dateien, die wahlweise entweder nur einen Parameter per $_GET übergeben bekommen, oder aber auch in einigen Fällen zwei.
Ich denke der ?site Wert bleibt immer konstant, also muss hier keine Variable oder sonstiges eingeführt werden.

Ich habe schon vieles hier gelesen und auch ausprobiert, meine aktuelle Regel für die genannten Szenarien lautet:

Code: Alles auswählen

RewriteEngine on
RewriteRule ^([^./]+)/([^/.]+)$ $1.php?site=$2 [L] 
Die Umleitung funktioniert wohl auch, ich bekomme immer die entsprechenden Seitenelemente angezeigt, jedoch fehlen eben sämtliche Stylesheet-Informationen, sowie die Images.

Sofern ich nur folgende Regel, anstatt die oben genannte verwende, funktioniert die Umleitung auch mit Styleshett und Images, jedoch bin ich dann nicht in der *.php-Datei variabel und ebenso fehlt mir der wichtige ID parameter an den entsprechenden Stellen.

Code: Alles auswählen

RewriteEngine on
RewriteRule ^([^/.]+)$ index.php?site=$1 [L] 

Vielen Dank schonmal im Voraus.
Ich hoffe meine Beschreibung hilft euch mein Problem nachzuvollziehen und jemand hat da eine Lösung parat :).

Für mich stellt sich zudem das Hauptproblem, dass es nicht immer diesen Parameter &id= gibt, was für mich die Sache schon so sehr erschwert, dass ich dort nicht mehr weiterkomme.

Liebe Grüße
ViperTK

Anzeige von ABAKUS

von Anzeige von ABAKUS »


Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

Tomasso
PostRank 8
PostRank 8
Beiträge: 864
Registriert: 17.11.2006, 17:31
Wohnort: Augsburg

Beitrag von Tomasso » 07.05.2010, 09:39

Hast du die .css-Datei mal so https://www.domain.de/style.css eingebaut?

Vermutlich das selbe Problem mit deinen Images.

Hoffe bei dem Chaos kontrollierst du auch welche Parameter an deine php-Datei übergeben werden. Sonst hast ziemlich schnell unerwünschte Zugriffe auf deiner Seite :oops:

ViperTK
PostRank 1
PostRank 1
Beiträge: 6
Registriert: 06.05.2010, 20:26

Beitrag von ViperTK » 07.05.2010, 11:02

Hey,

erstmal vielen lieben Dank an dich für deine Antwort.

Aber kann doch nicht sein, dass ich jetzt überall so Zeilen hinzufügen muss.

Code: Alles auswählen

<link rel="stylesheet" type="text/css" href="<?=$domain;?>css/style.css" />
Das muss sich doch auch anders beheben lassen, kann ich mir beim besten Willen nicht vorstellen. Dafür sollte es doch auch diverse Regeln geben, die bestimmte Unterverzeichnisse irgendwie ausschließen oder so.

Ich habe also nachher in der URL so Links stehen wie:

Code: Alles auswählen

www.domain.de/index/aboutus
Soweit denke ich funktioniert es auch, wie schon im vorherigen Post erwähnt nur leider wollen die CSS sowie Images nicht :/.
Bitte um weitere Hilfen, bin für alle Ideen etc. sehr sehr dankbar.

Liebe Grüße

Anzeige von ABAKUS

von Anzeige von ABAKUS »

Content Erstellung von ABAKUS Internet Marketing
Ihre Vorteile:
  • einzigartige Texte
  • suchmaschinenoptimierte Inhalte
  • eine sinnvolle Content-Strategie
  • Beratung und Umsetzung
Jetzt anfragen: 0511 / 300325-0

Tomasso
PostRank 8
PostRank 8
Beiträge: 864
Registriert: 17.11.2006, 17:31
Wohnort: Augsburg

Beitrag von Tomasso » 07.05.2010, 16:04

Warum überall? Normalerweise macht man sowas in der header.php. Dann muss man das nur einmal ändern :idea:

Wie sieht dein Code für die css-Datei bislang aus und wo hast du die eingebaut?

alpening
PostRank 4
PostRank 4
Beiträge: 110
Registriert: 07.12.2005, 14:30
Wohnort: Miesbach

Beitrag von alpening » 07.05.2010, 16:23

das Problem hatte ich Anfangs auch. Lösung ist ganz einfach

Code: Alles auswählen

<base href="http&#58;//www.domain.de/" />
in <head>-Bereich deiner HTML-Dateien eintragen.

Wenn du jetzt Bilder, CSS-Dateien usw über

Code: Alles auswählen

<img src="images/bild.jpg">
einbindest, verwendet der Browser unabhänig vom aktuellen Pfad immer die Base-Url (also https://www.domain.de/images/bild.jpg).

daniel5959
PostRank 8
PostRank 8
Beiträge: 891
Registriert: 20.04.2010, 22:25

Beitrag von daniel5959 » 07.05.2010, 22:25

Hallo,

ein kleiner Hinweis - Google kann auch mit index.php?site=aboutus umgehen, siehe

https://googlewebmastercentral-de.blogs ... -urls.html
Sollte ich meine dynamischen URLs in statisch aussehende URLs umwandeln?
Wir haben im Folgenden ein paar Punkte zusammengetragen, die ihr beachten solltet, wenn ihr dynamische URLs benutzt.

1. Es ist ziemlich schwer, eine dynamische URL in richtiger Weise in eine statisch aussehende URL umzuwandeln und diese dann zu pflegen.
2. Es ist viel besser, wenn ihr uns die ursprüngliche dynamische URL anbietet und es uns überlasst, problematische Parameter aufzuspüren und zu umgehen.
3. Wenn ihr eure URL umschreiben wollt, so könnt ihr unnötige Parameter entfernen, solltet aber die dynamisch aussehende URL beibehalten.
4. Wenn ihr eine statische URL anstelle einer dynamischen URL anbieten wollt, solltet ihr eine statische Kopie des dazugehörigen Contents erstellen.
daniel5959 :)

ViperTK
PostRank 1
PostRank 1
Beiträge: 6
Registriert: 06.05.2010, 20:26

Beitrag von ViperTK » 10.05.2010, 15:14

alpening hat geschrieben:das Problem hatte ich Anfangs auch. Lösung ist ganz einfach

Code: Alles auswählen

<base href="http&#58;//www.domain.de/" />
in <head>-Bereich deiner HTML-Dateien eintragen.

Wenn du jetzt Bilder, CSS-Dateien usw über

Code: Alles auswählen

<img src="images/bild.jpg">
einbindest, verwendet der Browser unabhänig vom aktuellen Pfad immer die Base-Url (also https://www.domain.de/images/bild.jpg).
Vielen vielen Dank!
Genau das war der richtige Eintrag, jetzt klappt alles wunderbar, die Rules habe ich auch entsprechend hinbekommen. Falls nochmal jemand Probleme haben sollte und über den Thread hier stolpert, hier meine Lösung:

Code: Alles auswählen

RewriteEngine on
RewriteRule ^&#40;&#91;^/.&#93;+&#41;$ $1.php &#91;L&#93;
RewriteRule ^&#40;&#91;^./&#93;+&#41;/&#40;&#91;^/.&#93;+&#41;$ $1.php?site=$2 &#91;L&#93;
-------------
daniel5959 hat geschrieben:Hallo,

ein kleiner Hinweis - Google kann auch mit index.php?site=aboutus umgehen, siehe

https://googlewebmastercentral-de.blogs ... -urls.html
Sollte ich meine dynamischen URLs in statisch aussehende URLs umwandeln?
Wir haben im Folgenden ein paar Punkte zusammengetragen, die ihr beachten solltet, wenn ihr dynamische URLs benutzt.

1. Es ist ziemlich schwer, eine dynamische URL in richtiger Weise in eine statisch aussehende URL umzuwandeln und diese dann zu pflegen.
2. Es ist viel besser, wenn ihr uns die ursprüngliche dynamische URL anbietet und es uns überlasst, problematische Parameter aufzuspüren und zu umgehen.
3. Wenn ihr eure URL umschreiben wollt, so könnt ihr unnötige Parameter entfernen, solltet aber die dynamisch aussehende URL beibehalten.
4. Wenn ihr eine statische URL anstelle einer dynamischen URL anbieten wollt, solltet ihr eine statische Kopie des dazugehörigen Contents erstellen.
daniel5959 :)
Vielen Dank auch für den Hinweis :).
Wusste ich noch gar nicht und sehr interessant was Google alles erarbeitet und verbessert hat, wovon ich noch gar nichts wusste.

___________________________________________________________

Desweiteren hätte ich noch eine Frage, über die ich schon länger am senieren bin, jedoch immernoch nicht wirklich weiss wie dafür die RewriteRule aussieht bzw. wie man das ganze überhaupt handhabt.

Code: Alles auswählen

http&#58;//www.domain.de/artikel/14472/css-interview-mit-kai-kai-schafer-man-kann-nie-genug-fur-die-eps-vorbereitet-sein_css/
Wie bekomme ich eine solche RewriteRule hin?
Bzw. weiss ich ja, dass die dort zu sehende URL einfach nur unsichtbar für uns User weitergeleitet wird an beispielsweise an

Code: Alles auswählen

http&#58;//www.domain.de/artikel.php?id=14472
Was ich mir allerdings noch nicht erklären kann, wie ich aus der id 14472 dann den Title bekomme, den ich dann mit in die neue statische URL einfüge?
Was muss ich hierfür vll sogar an der artikel.php ändern, oder wie kann man das ganze überhaupt angehen und umsetzen?

Ich bedanke mich wieder einmal recht herzlich im Voraus bei allen die evtl. einen Tip für mich bereit haben.

Liebe Grüße
ViperTK

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag