{% extends 'partials/base.html.twig' %} {# Inlined to avoid a Twig namespace lookup; sized via .mg-rocket / .fa-rocket compatible CSS so it drops in wherever the FA rocket icon was. #} {% set rocket_svg %}{% endset %} {% block titlebar %}
user/data, user/accounts, user/config and user/env folders may be downloadable over the web.
{% if migrate_grav_security.apache %}
On older installs these folders are only protected by file extension, so certificates, keys, tokens and databases stored under user/data can be fetched directly. Grav 2.0 blocks them outright — apply the same fix to this site now.
The site root .htaccess is not writable, so this cannot be fixed automatically. Add this rule to it inside the <IfModule mod_rewrite.c> block:
{{ migrate_grav_security.snippet }}
{% endif %}
{% else %}
This site is served by {{ migrate_grav_security.server ?: 'a non-Apache webserver' }}, which ignores .htaccess. Grav cannot fix this for you — add the equivalent rule to your webserver config and reload it:
{{ migrate_grav_security.snippet }}
{% endif %}
user/ folders are protected from direct web access.
Stage a fresh Grav 2.0 install alongside this site and hand off to a standalone migration wizard. Your current site stays untouched until you explicitly promote the new install.
/{{ migrate_grav_state.stage_dir }}/ and /{{ migrate_grav_state.staged_zip }}.
{{ migrate_grav_state.source.grav_version }} by {{ migrate_grav_state.source.trigger }}.
/{{ config.plugins['migrate-grav'].stage_dir }}/ and open the migration wizard in a fresh PHP process.
migrate.php file at your webroot.tmp/ for the wizard to extract..migrating./migrate.php — your browser leaves Grav 1.x entirely from this point on.Run the same kickoff without the admin UI: