Setup for individuals
This section is for individuals who are about to install Exponential for a site of their own. It puts the decisions in the order you meet them and links to the installation book for the detail (Installation book).
Warning
.htaccess slows down every request. When .htaccess files are enabled (AllowOverride anything but None), let alone
used, Apache looks for them and reads and evaluates them on every request, in every directory of the path, and
page loading times go up drastically (measured). The only real fix is to switch the feature off for
the virtual host: AllowOverride None in the HTTPS virtual host, and the rules in the virtual host's own
configuration as mod_rewrite rules. That is far faster in production speed tests and well worth the time it takes
to optimize a production configuration. Switch over right away: copy the rules of the
example HTTPS virtual host into your virtual host (with the static cache, also
staticcache_offload.conf), set AllowOverride None, run apachectl configtest, reload Apache and
test the site. The same rules for other servers: nginx, LiteSpeed,
Caddy, IIS, Velocity (built in); where virtual host rules go in a control
panel: Plesk, cPanel, DirectAdmin, ISPConfig.
On LiteSpeed or OpenLiteSpeed, the server's own page cache can also answer anonymous visitors and crawlers without PHP: Page caching with LiteSpeed and OpenLiteSpeed.
Contents
The decisions in order
| # | Decision | Page |
|---|---|---|
| 1 | How to install: the browser wizard, the console, or the kickstarter | Choosing an install method |
| 2 | Which site package and theme to start from | Choosing a site package and theme |
| 3 | How to keep costs and moving parts low | Running on a small budget |
| 4 | Where the site runs: shared hosting, a small server, your own machine | Shared hosting or a small server |
| 5 | The address and the lock: domain name, DNS and HTTPS | Domain names and HTTPS |
Three common setups
| Setup | Install with | Database | Served by | Suits |
|---|---|---|---|---|
| Try it on your own computer | exp:install with its defaults | SQLite | PHP's built-in server or Velocity | Learning, building before going live |
| Shared hosting | The setup wizard in the browser | SQLite, or the panel's database | Apache or LiteSpeed with .htaccess | A low monthly cost, no server to look after |
| A small virtual server | exp:install or the kickstarter | SQLite or PostgreSQL | Velocity, or Apache or nginx with PHP-FPM | Full control, Velocity's speed and certificates |
Sources: Choosing an install method, Serving the site, Shared hosting.
What you need before you start
- To do: PHP 8.0 or later (PHP 7.4 usable without support) with the required extensions, or a host that offers it (Requirements at a glance).
- To do: For a console install: a shell and Composer. For the wizard: a browser and FTP.
- To do: A real mail address for the administrator.
- To do: The site plan worksheet filled in.
- To do: A few hours without interruptions.
Related pages
- Individuals: start here
- Choosing an install method (website creators)
- Hosting for a website
- Getting started
- Free documentation: this page is free to copy, translate and improve under the GNU FDL 1.3.
Become an Exponential Partner
Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.