Articles

What Are Apps?

Apps are your web applications. Sometimes people call apps "websites."

Supported Languages

ServerPilot currently supports PHP 5.4, PHP 5.5, PHP 5.6, PHP 7.0, PHP 7.1, and PHP 7.2 apps.

App Configuration

ServerPilot configures your servers with Nginx as the public-facing webserver. Nginx serves static files and all other requests are proxied to Apache 2.4 so that you can use .htaccess files. PHP is configured to run via FPM. Each app can have multiple MySQL databases.

The web root directory for each app is /srv/users/serverpilot/apps/APPNAME/public.

Deploying Your Code

To get your app's code onto your server, do one the following as the system user called serverpilot:

  • Upload files using SFTP/SCP.
  • SSH into the server and download your app's code (e.g. using git).

Domains and DNS

The domain name you specify for your app is what is used in the web server's virtual host configuration. If you set your app's domain name to example.com, Nginx and Apache will be configured to listen for both example.com and www.example.com.

ServerPilot does not manage DNS for you. To access your apps by their domain name, you must make the appropriate changes in your domain's DNS zone so that your domain name resolves to your server's IP address. You can do this where you currently manage DNS for your domain.

IP Addresses

ServerPilot configures the web server to listen on all of the server's IP addresses, including IPv6 addresses.

Accessing Your Apps

If you have only one app on your server, you can access the app using either http://SERVER_IP_ADDRESS or http://DOMAIN.

If you have more than one app on a server, you can control which app responds when you make requests to http://SERVER_IP_ADDRESS by setting the default app. Your other apps will only be accessible using their domain names (http://DOMAIN).