Ich habe mich gefragt, ob es möglich ist zu überprüfen, ob Apache AND IIS in mod_rewrite
aktiviert ist .PHP
ModRewrite für IIS ist vorhanden. Überprüfen Sie es here
.
Also suche ich nach einem PHP-Skript, das mod_rewrite
nach Apache und IIS sucht .
Kennt jemand ein solches Skript oder kann er eines schreiben?
Speziell für Microsoft IIS .
Vielen Dank!
quelle
mod_rewrite
installiert ist. Das IIS Mod-Rewrite- Modul, auf das Sie sich wahrscheinlich beziehen, ist ein völlig anderes und kommerzielles Produkt - es hat keine Assoziation mit dem Apache-Modul, es ist eine ganz andere Frage und ich habe keine Erfahrung damit.phpinfo()
kann für viele Dinge nützlich sein. Wenn Sie jedoch ein System schreiben möchten, das verwendet,mod_rewrite
wenn es aktiviert ist oder auf andere Weise auf ein anderes Verhalten zurückgreift , ist es hilfreich, es programmgesteuert zu erkennen.Kopieren Sie diesen Code und führen Sie ihn aus, um dies herauszufinden.
quelle
Ich mag Christian Roys Lösung :
Dann können Sie Ihren PHP-Code für einchecken
Keine Ahnung, ob dies auch mit IIS funktioniert (ich habe keine Möglichkeit zu überprüfen), aber die Chancen stehen gut.
quelle
<IfModule mod_env.c>
wäre es fast perfekt. :)Laden Sie eine Datei namens info.php mit diesem Code hoch und führen Sie sie aus:
Suchen Sie auf der Seite nach mod_rewrite und prüfen Sie, ob Sie es unter Geladene Module finden.
quelle
Mach es nicht so schwierig, dass du es einfach finden kannst
phpinfo();
Hoffe hilfreich!
Vielen Dank
quelle
Über die Kommandozeile können wir dies in CentOs tun
quelle
Suchen Sie im apache2handler in der Zeile Loaded Modules unter Configuration.
Das ist einfach und funktioniert.
quelle
Dies ist meine aktuelle Methode, um zu überprüfen, ob Mod_rewrite sowohl für Apache als auch für IIS aktiviert ist
Es funktioniert auf meinem lokalen Computer und auch in meinem IIS-basierten Webhost. Auf einem bestimmten Apache-Server funktionierte dies jedoch nicht für Apache, da apache_get_modules () deaktiviert war, aber mod_rewrite auf diesem Server aktiviert war.
quelle
Sie können eine Liste der installierten Apache-Module abrufen und dies überprüfen. Vielleicht können Sie überprüfen, ob es installiert ist, indem Sie nach seiner DLL-Datei (oder einer Linux-äquivalenten Datei) suchen.
quelle
Zwei Codezeilen:
quelle
Noch eine Methode durch
exec()
.Wenn
mod_rewrite
es geladen ist, wird "rewrite_module" in der Ausgabe zurückgegeben.quelle
Eine andere Idee, in der Tat eher ein schmutziger Hack, in Bezug auf das Umschreiben von Mods ist, dass das Serverabhängige ein nicht notwendiges PHP-Problem ist: Warum nicht, wenn Sie die Möglichkeit haben, ein Testverzeichnis erstellen, ein .htaccess in das Umschreiben in test.php einfügen, das Verzeichnis aufrufen über http und überprüfen Sie, ob Sie das erwartete Ergebnis erhalten, das Sie in test.php eingegeben haben.
In der Tat schmutzig.
quelle
Verwenden Sie diese Funktion:
quelle
Wie wäre es, eine Umleitung zu einer bekannten Datei vorzunehmen und dann zu überprüfen, ob diese Umleitung tatsächlich mit Curl funktioniert?
quelle
Für IIS-Helden und -Heldinnen:
Sie müssen nicht nach mod_rewrite suchen. Installieren Sie einfach das Rewrite 2- Modul und importieren Sie dann .htaccess- Dateien.
quelle