Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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
Kommentar vom Moderator masterG am 11.12.2010 um 12:44:49 Uhr
Verschoben von PHP
GELÖST

Bedingte catch-all in .htaccess

Frage Entwicklung Webentwicklung

Mitglied: ChrisFah

ChrisFah (Level 1) - Jetzt verbinden

01.12.2010, aktualisiert 11.12.2010, 4108 Aufrufe, 5 Kommentare

suche eine Lösung für rewrite rules mit einer bedingten catch all möglichkeit

Hallo,

bin wieder mal em Ende meiner Weisheiten

Ich habe folgende .htaccess:
01.
RewriteEngine on  
02.
 
03.
RewriteRule ^(.*)suchergebnis/seite/([0-9]+)/(.*)$ /searchresult.php?showpage=$2&$3 [qsappend,L] 
04.
RewriteRule ^(.*)suchergebnis(.*)$ /searchresult.php?$2 [qsappend,L] 
05.
RewriteRule ^suche(.*)$ /search.php?$1 [qsappend,L] 
06.
RewriteRule ^detailsuche(.*)$ /search_detailed.php?$1 [qsappend,L] 
07.
... und einige mehr ... 
08.
RewriteRule ^(.*) catchall.php?$1 [qsappend,L]
Dazu kommen einige .php scripte, die ohne rewrite angesprochen werden.
Ohne die letzte (.*) catchall.php Zeile klappt alles perfekt. Mit dieser Zeile habe ich einer Server Error.

Was suche ich?
Es soll wie in der .htaccess rewriterules angegeben, diese Adressen umgeleitet werden, die .php dateien direkt ausgeführt werden, und alles was dann noch übrig bleibt, soll mit dieser rewriterule abgefangen werden - sozusagen eine selbstdefinierte Error404, wobei ich bewusst keine error404 funktion verwenden will.

Vielen Dank im voraus,
Lg, Chris
Mitglied: godlie
01.12.2010 um 08:43 Uhr
Hallo, was du suchst ist eine RewriteCond
Bitte warten ..
Mitglied: ChrisFah
01.12.2010 um 20:05 Uhr
Naja, da steh ich vor dem Problem, daß ich nicht weiss, wie ich die Bedingungen formulieren soll.
Letztendlich sollen alle Ausdrücke für diese catchall rule zutreffend sein, daher muss ich (.*) verwenden. Da werden jedoch die bereits zuvor umgeschriebenen auch erneut zwangsbeglückt.

Ich steh vor einem grossen ?.

Lg, Chris
Bitte warten ..
Mitglied: ChrisFah
01.12.2010 um 21:15 Uhr
Zur Erinnerung: Es sollen zuerst alle Urls lt RewriteRule umgeschrieben werden, was dann noch übrig bleibt und kein php file ist, wird mit der catch-all Bedingung bedient.

Habe es nun so gelöst:

01.
RewriteEngine on 
02.
 
03.
RewriteRule ^(.*)suchergebnis/seite/([0-9]+)/(.*)$ /searchresult.php?showpage=$2&$3 [qsappend,L] 
04.
RewriteRule ^(.*)suchergebnis(.*)$ /searchresult.php?$2 [qsappend,L] 
05.
RewriteRule ^suche(.*)$ /search.php?$1 [qsappend,L] 
06.
RewriteRule ^detailsuche(.*)$ /search_detailed.php?$1 [qsappend,L] 
07.
 
08.
# Catch all ausser .php files 
09.
RewriteCond %{REQUEST_URI} !(\.)  
10.
RewriteCond %{REQUEST_URI} !^/$  
11.
RewriteRule ^(.*)$  /test.php?os=$1 [L]
Seltsamerweise darf ich in der ersten RewriteCond NICHT
%{REQUEST_URI} !(\.php)
schreiben, da sonst die stylesheet.css nicht mehr verfügbar scheint. Weiss wer warum das so ist?

Lg, Chris
Bitte warten ..
Mitglied: dog
01.12.2010 um 21:49 Uhr
01.
#	Nächste Regel trifft nur zu, wenn die URL keine Datei ist oder nicht existiert 
02.
RewriteCond %{REQUEST_FILENAME} !-f 
03.
#	Nächste Regel trifft nur zu, wenn die URL kein Ordner oder nicht existiert 
04.
RewriteCond %{REQUEST_FILENAME} !-d
Bitte warten ..
Mitglied: ChrisFah
02.12.2010 um 10:03 Uhr
So klappt es auch prime.
Danke !
Bitte warten ..
Ähnliche Inhalte
Outlook & Mail
gelöst Exchange Online Catch All Adressen und Frage zum möglichen Pop Collector (6)

Frage von PizzaPepperoni zum Thema Outlook & Mail ...

Batch & Shell
PowerShell mehrere Try-Catch Blöcke? (1)

Frage von Marabunta zum Thema Batch & Shell ...

Apache Server
gelöst htaccess Weiterleitung (4)

Frage von schneerunzel zum Thema Apache Server ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 Ordnerfreigabe (21)

Frage von Xaero1982 zum Thema Windows 10 ...

Router & Routing
Allnet - VDSL2 Modem - SFP (mini-GBIC) (20)

Frage von Dobby zum Thema Router & Routing ...

Monitoring
Netzwerk-Monitoring Software (18)

Frage von Ghost108 zum Thema Monitoring ...

Windows 10
Seekrank bei Windows 10 (15)

Frage von zauberer123 zum Thema Windows 10 ...