
Ich verwende die folgende Umschreiberegel, um die gesamte URL an ein PHP-Skript zu übergeben:
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*?)$ index.php?rewriteUrl=$1 [QSA,L]
Auf manchen Servern muss ich
RewriteRule ^(.*)$ index.php?rewriteUrl=$1 [QSA,L]
stattdessen (das ?
fehlt).
Gibt es eine Möglichkeit, den Server dazu zu bringen, dies automatisch zu handhaben? In Form eines Fallbacks/Try-Catchs oder etwas in der Art?
Antwort1
Wenn Sie die unterschiedlichen Versionsnummern der beiden Server kennen, verwenden Siemod_versionum dies zu tun. Wenn 2.3+ beispielsweise Folgendes verwendet ?
:
<IfVersion >= 2.3>
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*?)$ index.php?rewriteUrl=$1 [QSA,L]
</IfVersion>
<IfVersion < 2.3>
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php?rewriteUrl=$1 [QSA,L]
</IfVersion>
VerwendenServerSignaturum die Versionsinformationen an den Client senden zu lassen.