tl; dr: W jaki sposób wykonać następujące czynności w .conf lub pliku .htaccess:Wykryj wersję Apache w konfiguracji apache?
<IfApache22>
# Do A
</IfApache22>
<IfApache24>
# Do B
</IfApache24>
Longer pytanie:
z Apache 2.4 stary Order get zastąpiona Require.
W moich plikach .htaccess mam
<FilesMatch "\.(long|list|file|types)$">
Order allow,deny
</FilesMatch>
co oznacza Apache nie uruchamia się chyba włączyć access_compat. Robiąc to przedstawia użyteczne obejście, potrzebuję rozwiązania, które będzie działać z obu składni, ponieważ konfiguracja będzie rozprowadzana na wiele serwerów. Pytanie brzmi, jak mogę wykryć obecną wersję Apache i zastosować poprawną dyrektywę.
Mam zamiar użyć tego pliku do frameworka, który jest rozprowadzany i używany przez wiele osób, i nie mogę kontrolować/gwarantować, że ma on lub brakuje jakiejś konkretnej konfiguracji serwera, dlatego chciałbym plik ma być agnostyczny 2,2/2,4 ".
+1 dla opcji IfDefine i -D. Tak naprawdę to mi nie pomaga. Uruchomienie dwóch wersji serwera sieciowego wydaje się być dużo pracy, gdy prosty/else powinien być w stanie go rozwiązać. Czy możesz rozwinąć "oddzielne katalogi" nieco więcej? Sprawdzenie obecnej wersji wydaje mi się bardzo dobrym rozwiązaniem. Rozszerzyłem nieco pytanie na temat tego, dlaczego. – Letharion