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

RewriteRule für Webserver

Frage Linux

Mitglied: BigBaLu

BigBaLu (Level 1) - Jetzt verbinden

13.04.2011 um 14:56 Uhr, 4033 Aufrufe, 5 Kommentare

Ich möchte per .htaccess Datei eine RewriteRule erstellen. Leider klappt das bei mir nicht so wirklich...

Wenn ich folgendes eingebe:
https://testdomain.de/intra/principals

dann soll er mich auf folgendes umleiten bzw. es soll für folgendes stehen:
https://testdomain.de/intra/groupdav.php/principals

Wie kann ich das erreichen bzw. wie kann ich das so schreiben, ohne gleich das ganze Verzeichnis umzuschreiben.

Danke,
BaLu
Mitglied: gresser
13.04.2011 um 16:05 Uhr
Redirect /eingabe /ziel

Dies einfach in der .htaccess Datei im root Verzeichnis eintragen.

Bei diesem Beispiel würde dann http://domain.de/eingabe auf die http://domain.de/ziel weitergeleitet. Bzw. da die Domain nicht angeben ist in den Ordner ziel.

In deinem Beispiel brauchst du dann halt folgende Regel

Redirect /intra/principals /intra/groupdav.php/datei.php

oder falls du die .htaccess Datei nicht im root ablegst halt ohne das intra.
Bitte warten ..
Mitglied: J0j0
13.04.2011 um 17:34 Uhr
Schau mal hier:

RewriteEngine on 
RewriteRule ^alice.html$ bob.html 
 
Upload this .htaccess file to the same directory as alice.html and bob.html, and reload Alice’s page. You should see Bob’s page being displayed, but Alice’s URL. If you still see Alice’s page being displayed, then check you’ve followed the instructions correctly (you may have to clear your cache). If things still aren’t working for you, then contact your technical support people and ask them to enable mod_rewrite and the FileInfo override in their httpd.conf file for you
http://www.workingwith.me.uk/articles/scripting/mod_rewrite
Bitte warten ..
Mitglied: Florian.Sauber
13.04.2011 um 19:56 Uhr
Tag auch,

Zitat von gresser:
Redirect /intra/principals /intra/groupdav.php/datei.php

Wenn ich den TO richtig verstehe, soll ja ganz allgemein www.foo.com/intra/xyz/* nach www.foo.com/intra/groupday.php/xyz/* umgeleitet werden.

Also eher
01.
Redirect /intra/ /intra/groupdav.php/
oder sauberer
01.
Redirect /intra http://www.foo.com/intra/groupdav.php
VG Florian
Bitte warten ..
Mitglied: BigBaLu
14.04.2011 um 13:44 Uhr
Soweit war ich leider auch schon - das funktioniert eben nicht

principals gibt es als Ordner nicht... Wenn ich jetzt hinter dem / (https://www.foo.com/intra/principals) gehe, dann sollte er mich auf https://www.foo.com/intra/groupdav.php/principals weiterleiten... Und das geht so leider nicht
Bitte warten ..
Mitglied: Florian.Sauber
19.04.2011 um 01:24 Uhr
Moin Moin,

ich seh gerade: So kann es ja nicht gehen! Du willst ja in ein Unterverzeichnis weiterleiten. Das was ich oben geschrieben habe funktioniert nur auf ein/e andere/s Domain/Verzeichnis.

also bspw.
01.
Redirect /intra /etcetera/groupusw 
02.
oder 
03.
Redirect /intra http://extra.com/groudusw.
Wenn Du in ein Unterverzeichnis verweisen willst, wird es etwas "schwieriger", da man allzu gerne in eine (rekursive) Schleife gerät. In Deinem Fall dann eben
intra/intra/intra/intra/.../groupdav.

Ähnlich geht es, wenn Du über bspw.
01.
RewriteEngine on 
02.
RewriteRule ^/intra(.*) /intra/groupdav$1 [R]
einen Redirect in ein untergeordentes Verzeichnis veranlasst.
^/intra(.*) heiss dabei, dass $1 mit intraundalleswasdanachnochsogeschriebenwird ersetzt werden soll, also auch das intra in der Substitution /intra/groupusw...Also wieder eine Schleife
Abhilfe schafft da die Verkettung von 2 Regeln, bei der die erste abfragt, ob groupdav.php teil der URI ist und wenn nein, dann soll ersetzt werden.

Um das ganze etwas klarer zu gestalten legst Du am besten folgende .htaccess im Verzeichnis /intra an
01.
RewriteEngine On 
02.
RewriteRule !^groupdav.php - [C] 
03.
RewriteRule ^(.*) /intra/groupdav.php/$1 [L,R=301]
gibst Du jetzt bspw. foo.com/intra/xyz ein, wird zuerst geprüft, ob dieser Sring den String groupdav.php enthält. Da dies vor der ersten Substitution noch nicht der Fall ist, wird alles, was dem foo.com/intra/ folgt (.*), also hier xyz, in $1 geschrieben. Somit hast Du nach der ersten Substitution also foo.com/intra/groupdav.php/xyz. Da ab diesem Zeitpunkt der String groupdav.php enthalten ist, ist die Abfrage "ist nicht(!)groupdav.php" IMMER falsch, die 2. RewriteRule wird nicht mehr ausgeführt und es kommt auch zu keiner Schleifenbildung.
Der Parameter L ist zur Sicherheit, um die Regel gegenüber anderen abzuschliessen, der Parameter R(=301) sorgt für einen (permanenten) Redirect. Wenn Du R=301 weglässt, würdest Du in der Adressleiste foo.com/intra/abc stehen sehen, während auf foo.com/intra/groupdav.php/abc zugegriffen wird.

Hoffe das hilft Dir. Garantieren kann ich nämlich nicht dafür, dass es funktioniert, da ich davon ausgehe, dass .../groupdav.php/123 ja ursprünglich für .../groupdav.php?foobar=123... steht und Du bereits RewriteRules nutzt, die sich so in die Queere kommen könnten...

VG Florian
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Groupware
Newsletter Mails vom Webserver oder Mailserver versenden? (10)

Frage von Lakatusch zum Thema Groupware ...

Apache Server
gelöst Apache Webserver HTTP 500 Error (7)

Frage von ClepToManix zum Thema Apache Server ...

LAN, WAN, Wireless
gelöst Webserver Errichbarkeit aus dem Internet über einen Reverse Proxy (5)

Frage von mario87 zum Thema LAN, WAN, Wireless ...

Netzwerke
TP-ER5120 DMZ für Webserver (13)

Frage von ajudran zum Thema Netzwerke ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...