ServBay Configuration File Locations and Management
ServBay is a powerful local web development platform built on flexible management of various software packages such as web servers, databases, and language runtimes. To streamline management and maintain stability, ServBay centralizes all configuration files under a clear directory structure. This article details where ServBay stores its config files, and guides developers on how to locate and view these important files.
Important Notice: Do Not Manually Edit Configuration Files
ServBay's configuration files are automatically generated by the application based on your settings (configured via the UI). Do not manually edit configuration files directly within the ServBay config directories.
- macOS:
/Applications/ServBay/etc
- Windows:
C:\ServBay\etc
Manual edits may be lost or cause unexpected errors when ServBay updates, restarts, or you make changes via the UI.
All configuration changes should be performed with the ServBay graphical user interface (UI) or official command-line tools to ensure your changes are persistent and safe. This document provides path information for reference or troubleshooting.
Directory Structure Overview
ServBay's configuration files are mainly stored under the following core directories, organized by package name and version:
Main Configuration Directory:
- macOS:
/Applications/ServBay/etc
- Windows:
C:\ServBay\etc
This is the primary config directory, containing the majority of web server configs (Nginx, Caddy, Apache), language runtimes (PHP php.ini
), databases (MySQL, MariaDB config fragments), and other services (Redis, Memcached).
Database Directory:
- macOS:
/Applications/ServBay/db
- Windows:
C:\ServBay\db
This directory primarily stores database data files, but may also contain database-specific config files, such as PostgreSQL's access control files.
Common Package Directory:
- macOS:
/Applications/ServBay/package/common
- Windows:
C:\ServBay\package\common
This directory stores common packages such as OpenSSL, with their configs found here.
Detailed Configuration File Locations by Package
Below are examples of where ServBay stores config files for popular packages:
Web Servers
Web server config files are typically stored in subdirectories under ServBay's main config directory by package name and version.
Nginx: Main config directory:
- macOS:
/Applications/ServBay/etc/nginx
- Windows:
C:\ServBay\etc\nginx
For Nginx version 1.25, config files may be found at:
- macOS:
/Applications/ServBay/etc/nginx/1.25/nginx.conf
- Windows:
C:\ServBay\etc\nginx\1.25\nginx.conf
Other related configs (such as site and SSL configs) are organized here or in subdirectories.
- macOS:
Caddy: Main config directory:
- macOS:
/Applications/ServBay/etc/caddy
- Windows:
C:\ServBay\etc\caddy
Caddy's main config file:
- macOS:
/Applications/ServBay/etc/caddy/Caddyfile
- Windows:
C:\ServBay\etc\caddy\Caddyfile
- macOS:
Apache: Main config directory:
- macOS:
/Applications/ServBay/etc/apache
- Windows:
C:\ServBay\etc\apache
For Apache 2.4:
- macOS:
/Applications/ServBay/etc/apache/2.4/httpd.conf
- Windows:
C:\ServBay\etc\apache\2.4\httpd.conf
Virtual host configs are typically in the
extra
subdirectory.- macOS:
Language Runtimes
Language runtime configs (PHP, Python, Node.js, Go, Java, etc.) are also organized under the main config directory by language and version.
PHP: Main config directory:
- macOS:
/Applications/ServBay/etc/php
- Windows:
C:\ServBay\etc\php
For PHP 8.2, the
php.ini
path:- macOS:
/Applications/ServBay/etc/php/8.2/php.ini
- Windows:
C:\ServBay\etc\php\8.2\php.ini
PHP-FPM configs are stored in the same versioned directory.
- macOS:
Python: Python configuration is typically managed via environment variables or within project files. ServBay's bundled Python executables are found at:
- macOS:
/Applications/ServBay/package/python/{version}/bin
- Windows:
C:\ServBay\package\python\{version}\bin
There is no centralized Python config in ServBay's main config directory.
- macOS:
Node.js, Go, Java, Ruby, Rust, .NET: Similar to Python, these runtimes rely on project-level configs, environment variables, or toolchain norms. ServBay provides runtime environments/SDKs, but global config files are not stored in the main directory.
Databases
Database configs are distributed between ServBay's main config and data directories.
MySQL / MariaDB: Main config directory:
- macOS:
/Applications/ServBay/etc/mysql
(or/Applications/ServBay/etc/mariadb
) - Windows:
C:\ServBay\etc\mysql
(orC:\ServBay\etc\mariadb
)
For MySQL 8.0:
- macOS:
/Applications/ServBay/etc/mysql/8.0/my.cnf
- Windows:
C:\ServBay\etc\mysql\8.0\my.cnf
This file contains main database configuration parameters.
- macOS:
PostgreSQL: Main config directory by version:
- macOS:
/Applications/ServBay/etc/postgresql
- Windows:
C:\ServBay\etc\postgresql
For PostgreSQL 16:
- macOS:
/Applications/ServBay/etc/postgresql/16/postgresql.conf
- Windows:
C:\ServBay\etc\postgresql\16\postgresql.conf
Authentication config files (
pg_hba.conf
,pg_ident.conf
) are stored in the database directory, also organized by version:- macOS:
/Applications/ServBay/db/postgresql/16/pg_hba.conf
- macOS:
/Applications/ServBay/db/postgresql/16/pg_ident.conf
- Windows:
C:\ServBay\db\postgresql\16\pg_hba.conf
- Windows:
C:\ServBay\db\postgresql\16\pg_ident.conf
- macOS:
MongoDB, Redis: Configs for these are usually in the main config directory by name and version:
- macOS:
/Applications/ServBay/etc
- Windows:
C:\ServBay\etc
For Redis:
- macOS:
/Applications/ServBay/etc/redis/redis.conf
- Windows:
C:\ServBay\etc\redis\redis.conf
- macOS:
Other Services and Common Packages
OpenSSL: OpenSSL configs are found in the common package directory by version:
- macOS:
/Applications/ServBay/package/common/openssl
- Windows:
C:\ServBay\package\common\openssl
For OpenSSL 3.2:
- macOS:
/Applications/ServBay/package/common/openssl/3.2/openssl.cnf
- Windows:
C:\ServBay\package\common\openssl\3.2\openssl.cnf
- macOS:
ACME (for automatic SSL certificate issuance): ACME configs and certificates are found in:
- macOS:
/Applications/ServBay/etc/acme
or/Applications/ServBay/db/acme
- Windows:
C:\ServBay\etc\acme
orC:\ServBay\db\acme
- macOS:
Viewing and Locating Configuration Files
Although manual editing is discouraged, developers may want to view config files for troubleshooting. Here’s how to locate and view them:
Navigate to the config file directory: Use a command-line tool to move to the desired config directory.
macOS (using Terminal, iTerm2, etc.):
bash# View the Nginx config directory cd /Applications/ServBay/etc/nginx/ # View the PostgreSQL 16 pg_hba.conf directory cd /Applications/ServBay/db/postgresql/16
1
2
3
4
5Windows (using PowerShell or Command Prompt):
powershell# View the Nginx config directory cd C:\ServBay\etc\nginx\ # View the PostgreSQL 16 pg_hba.conf directory cd C:\ServBay\db\postgresql\16
1
2
3
4
5List files in the directory:
macOS:
bashls
1Windows:
powershell# PowerShell Get-ChildItem # Or shortcut ls # Command Prompt dir
1
2
3
4
5
6
7View file contents: Use text viewers or editors (for viewing only; do not save changes) to inspect configuration files.
macOS:
bash# View Nginx's nginx.conf cat nginx.conf # Or use less for paging less nginx.conf # View PHP 8.2's php.ini less /Applications/ServBay/etc/php/8.2/php.ini
1
2
3
4
5
6
7Windows:
powershell# PowerShell - View Nginx's nginx.conf Get-Content nginx.conf # Or use more for paging more nginx.conf # View PHP 8.2 php.ini Get-Content C:\ServBay\etc\php\8.2\php.ini | more # Command Prompt type nginx.conf more nginx.conf
1
2
3
4
5
6
7
8
9
10
11Restart services (if you've made changes via ServBay UI): If you modified configuration using the ServBay UI, restart the relevant services for changes to take effect. Use the ServBay management console or
servbayctl
command-line tool.macOS:
bash# Restart Nginx service servbayctl restart nginx -all # Restart PHP 8.2 service servbayctl restart php 8.2 # Restart all services servbayctl restart all
1
2
3
4
5
6
7
8Windows:
powershell# Restart Nginx service servbayctl.exe restart nginx -all # Restart PHP 8.2 service servbayctl.exe restart php 8.2 # Restart all services servbayctl.exe restart all
1
2
3
4
5
6
7
8
Frequently Asked Questions (FAQ)
Q: Can I manually edit configuration files to test advanced settings?
A: Strongly discouraged. The ServBay UI covers most essential configuration options. For customizations beyond what the UI offers, consult ServBay's advanced documentation or the community for support. Manual changes are likely to be overwritten.
Q: How does ServBay manage config files for multiple package versions?
A: As described, ServBay creates separate subdirectories for each package version under the config (macOS:
/Applications/ServBay/etc
or/Applications/ServBay/db
; Windows:C:\ServBay\etc
orC:\ServBay\db
), keeping versions isolated from each other.Q: What if I accidentally delete or corrupt a config file?
A: ServBay automatically regenerates config files from built-in templates and your saved UI settings. Usually, just make a configuration change in the UI (even a minor one) to trigger regeneration. In rare cases, you may need to reset package configs or contact ServBay support.
Summary
ServBay uses a centralized, organized directory structure for configuration files on both supported platforms:
- macOS: Mainly in
/Applications/ServBay/etc
, with additional files in/Applications/ServBay/db
and/Applications/ServBay/package/common
- Windows: Mainly in
C:\ServBay\etc
, with additional files inC:\ServBay\db
andC:\ServBay\package\common
This consistent design allows ServBay to manage configs seamlessly across platforms, facilitating troubleshooting and file discovery for developers.
Understanding these file locations will help you grasp how ServBay works and simplify troubleshooting. Remember: Always use the ServBay UI or official tools for configuration changes—never edit files directly—to keep your environment stable and reliable.