Jak mogę sprawdzić, czy plik Apache'a o numerze .htaccess
jest włączony, jeśli PHP jest włączone? Próbowałem rzeczy takie jak <IfModule !mod_php7.0.c>
i <IfModule !mod_php7.c>
, ale wydaje się, że nic nie robi po włączeniu/wyłączeniu modułu.Jak sprawdzić .htaccess, czy PHP jest włączone?
Chciałbym mieć rezerwę w moim .htaccess
, która odmawia dostępu ze wszystkich, gdy PHP jest wyłączone. W celu zapobieżenia wyciekowi czystego tekstu kodu PHP.
chcę zrobić coś takiego:
# If PHP is not installed, deny all access to .php files to prevent PHP code leakage
<IfModule !mod_php7.c>
<FilesMatch \.php$>
order deny,allow
deny from all
</FilesMatch>
</IfModule>
Docelowo będzie to coś sprawdzić jak if php7 AND php5 AND php4 are disabled, deny access
. Jakieś pomysły?
Ponadto, gdy parametr AllowOverride ma wartość None, plik .htaccess
niczego nie robi. Jakie są opcje, aby zapobiec wyciekowi kodu PHP w postaci zwykłego tekstu?
Sztuczka (najlepsza praktyka) nie umieszcza kodu źródłowego PHP w folderze 'public_html'; w ten sposób obie sprawy są rozwiązywane poprawnie. – DanFromGermany
Już to zrobiłem. Umieszczam tylko plik index.php, który zasadniczo zawiera rzeczy spoza folderu public_html. Ale zakładam, że mogę przenieść wszystko i mieć jeden plik php, który zawiera inny poza rootem. W takim przypadku, w najgorszym przypadku, plik zawierający jeden plik php z jednym zawiera nieszczelności. Dobrze? –
Tak, jest kilka sposobów, o których wspomniałeś jest prawdopodobnie najłatwiejszy i najprostszy. – DanFromGermany