Logs and Config Files
A quick reference for where ForgeKit keeps its generated config and logs. See Where are logs stored? for a troubleshooting-oriented walkthrough.
Per web-server instance
Inside /ForgeKit/instances/web/{instance_folder}/:
conf/sites-enabled/vhosts.conf: vhost entries for every site routed to this instanceconf/httpd.conf(Apache) orconf/nginx.conf(Nginx): the instance's main server configlogs/access.log,logs/error.log: the web server's own main-context logs, covering startup errors, port conflicts, and any request that didn't match a site's vhost. Open via the Logs button on the web server's row.logs/php_error.log: PHP's own error log for this instance. Written by PHP, not the web server, and shared by every site on this instance (there's no per-sitephp_error.log). Open via the second Logs button, under the PHP section of the same row.
Each instance has its own copy of these files. They are not shared between instances, even if two instances run the same Apache or Nginx version. See Instances.
Per PHP binary
php.ini: tied to the PHP binary/version, not to an individual instance. If two instances use the same PHP binary, they share thatphp.ini./ForgeKit/logs/php-fallback/php-{version}.log: a fallback/default log for that PHP version, used when PHP runs outside any instance context (terminal, phpMyAdmin). Normal site requests are handled by the per-site or instancephp_error.loginstead, so this file can stay empty during regular usage. That's expected.
Per site
/ForgeKit/logs/sites/{domain}/access.log,/ForgeKit/logs/sites/{domain}/error.log: written by that site's own<VirtualHost>/server{}block, same as a real Apache/Nginx vhost would. The first place to check when one specific site has PHP or web errors but others don't. Open via the Logs button on the site itself.
Per database instance
Inside /ForgeKit/instances/databases/{instance_folder}/:
my.ini(MySQL/MariaDB): the instance's own server config - port, datadir, tuning. Open via the Config button on the database's row, or from the "Database server" section of its phpMyAdmin panel.logs/mysql-error.log: the database server's own error log. Open via the Logs button on the database's row, or from the same "Database server" section of its phpMyAdmin panel. The first place to check when a database won't start or a connection is refused.
phpMyAdmin runtime
phpMyAdmin runs behind its own bundled PHP server, independent of any web server instance and independent of the database it's connected to. Its config/logs are shared by every database - there's no per-database copy.
/ForgeKit/tools/phpmyadmin-runtime/php.ini: PHP config for the phpMyAdmin runtime specifically. Only read when the runtime process starts - edit it, then use the Restart button in the phpMyAdmin panel for it to take effect./ForgeKit/tools/phpmyadmin5/config.inc.php: phpMyAdmin's own settings (blowfish secret, upload dir, etc). Takes effect on your next request, no restart needed./ForgeKit/logs/phpmyadmin-runtime.log: general output from the runtime process./ForgeKit/logs/phpmyadmin-runtime-error.log: PHP errors from the runtime process itself.
All four are opened via the phpMyAdmin panel's "phpMyAdmin runtime" section - see PHPMyAdmin. If phpMyAdmin's web page won't load, check these; if it loads but you can't connect to a database, check that database's my.ini/mysql-error.log above instead.
Continue to → Where are logs stored? or Site missing from vhosts.conf?