Sperrt Direktzugriff auf var/ (Session-/Mail-Dateien), database/, scripts/, docs/, app/, lib/ sowie env.local*.php, .sql und .md-Dateien. Lokal beim PHP-Dev-Server ohne Wirkung (kein Apache), greift aber auf echtem Apache-Webhosting.
37 lines
1.1 KiB
ApacheConf
37 lines
1.1 KiB
ApacheConf
# Nur *.php im Webroot und assets/ sollen direkt aufrufbar sein. Interne
|
|
# Verzeichnisse (Sessions, Mail-Logs, Migrationen, CLI-Skripte, Doku,
|
|
# App-Bausteine, Legacy-DB-Shim) und Konfigurationsdateien mit
|
|
# Zugangsdaten duerfen nicht direkt per URL abrufbar sein.
|
|
|
|
<IfModule mod_authz_core.c>
|
|
<DirectoryMatch "^.*/(var|database|scripts|docs|app|lib)/">
|
|
Require all denied
|
|
</DirectoryMatch>
|
|
</IfModule>
|
|
<IfModule !mod_authz_core.c>
|
|
<DirectoryMatch "^.*/(var|database|scripts|docs|app|lib)/">
|
|
Order allow,deny
|
|
Deny from all
|
|
</DirectoryMatch>
|
|
</IfModule>
|
|
|
|
<FilesMatch "^(env\.local\.php|env\.local\.example\.php|\.env.*|composer\.(json|lock))$">
|
|
<IfModule mod_authz_core.c>
|
|
Require all denied
|
|
</IfModule>
|
|
<IfModule !mod_authz_core.c>
|
|
Order allow,deny
|
|
Deny from all
|
|
</IfModule>
|
|
</FilesMatch>
|
|
|
|
<FilesMatch "\.(sql|md)$">
|
|
<IfModule mod_authz_core.c>
|
|
Require all denied
|
|
</IfModule>
|
|
<IfModule !mod_authz_core.c>
|
|
Order allow,deny
|
|
Deny from all
|
|
</IfModule>
|
|
</FilesMatch>
|