# Serves this CodeIgniter 4 app from its project root (app.payment-guru.com,
# or a subfolder on a dev box) without "/public/" in any URL. Everything -
# including real files at the project root (zips, env, composer.json, spark) -
# is routed into public/ and never served directly (MERCHANT_SITE_PLAYBOOK 5.8).
Options -Indexes

<IfModule mod_rewrite.c>
    RewriteEngine On

    # Already inside public/ - leave alone.
    RewriteCond %{REQUEST_URI} /public/ [OR]
    RewriteCond %{REQUEST_URI} /public$
    RewriteRule ^ - [L]

    # SSL domain-validation tokens that cPanel AutoSSL writes into the document
    # root. Only existing token files with these exact name shapes are served;
    # nothing else at the root is. Without this, certificate renewal fails.
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule ^\.well-known/acme-challenge/[A-Za-z0-9_-]+$ - [L]
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule ^\.well-known/pki-validation/[A-Za-z0-9_-]+\.txt$ - [L]

    # Everything else is routed into public/.
    RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

<IfModule !mod_rewrite.c>
    Require all denied
</IfModule>

# Carried over unchanged from the CI3 site root .htaccess. cPanel uses these to
# pick PHP 8.3 for this docroot and to raise upload/post limits (200M/508M).
# Apache applies them to public/ as well. Keep them when redeploying.
# BEGIN cPanel-generated php ini directives, do not edit
# Manual editing of this file may result in unexpected behavior.
# To make changes to this file, use the cPanel MultiPHP INI Editor (Home >> Software >> MultiPHP INI Editor)
# For more information, read our documentation (https://go.cpanel.net/EA4ModifyINI)
<IfModule php8_module>
   php_flag display_errors Off
   php_value max_execution_time 30
   php_value max_input_time 60
   php_value max_input_vars 1000
   php_value memory_limit 128M
   php_value post_max_size 508M
   php_value session.gc_maxlifetime 1440
   php_value session.save_path "/var/cpanel/php/sessions/ea-php83"
   php_value upload_max_filesize 200M
   php_flag zlib.output_compression Off
</IfModule>
<IfModule lsapi_module>
   php_flag display_errors Off
   php_value max_execution_time 30
   php_value max_input_time 60
   php_value max_input_vars 1000
   php_value memory_limit 128M
   php_value post_max_size 508M
   php_value session.gc_maxlifetime 1440
   php_value session.save_path "/var/cpanel/php/sessions/ea-php83"
   php_value upload_max_filesize 200M
   php_flag zlib.output_compression Off
</IfModule>
# END cPanel-generated php ini directives, do not edit
# php -- BEGIN cPanel-generated handler, do not edit
# Set the “ea-php83” package as the default “PHP” programming language.
<IfModule mime_module>
  AddHandler application/x-httpd-ea-php83 .php .php8 .phtml
</IfModule>
# php -- END cPanel-generated handler, do not edit
