Self-Hosting Basics - HL Vanilla Community
<main> <article class="userContent"> <div class="embedExternal embedImage display-large float-none"> <div class="embedExternal-content"> <a class="embedImage-link" href="https://us.v-cdn.net/6030677/uploads/HGIT40BD61UJ/microsoftteams-image-288-29.png" rel="nofollow noreferrer noopener ugc" target="_blank"> <img class="embedImage-img" src="https://us.v-cdn.net/6030677/uploads/HGIT40BD61UJ/microsoftteams-image-288-29.png" alt="MicrosoftTeams-image (8).png" height="108" width="1356" loading="lazy" data-display-size="large" data-float="none"></img></a> </div> </div> <h2 data-id="the-basics">The Basics</h2><p><strong>Higher Logic Vanilla (Vanilla)</strong> requires a server with PHP, MySQL, and web server software (like Apache or nginx). </p><ul><li>You’ll likely need to own a domain, and already have it configured on your server with DNS. </li><li>You typically need to create a database for it via your hosting provider, often via phpMyAdmin. </li><li>Then, you’ll need to visit that domain after uploading Vanilla to continue installation.</li></ul><p>Up to this point, your web host has been responsible for these things. You should consult their documentation and contact their support with any questions you may have.</p><p>Say you bought some web space and someone told you how to access it. Perhaps you:</p><ul><li>bought a domain like <code class="code codeInline" spellcheck="false" tabindex="0">example.com</code> ,</li><li>received a cryptic sub domain of your provider, like <code class="code codeInline" spellcheck="false" tabindex="0">abc123456789.yourwebhoster.com</code> ,</li><li>or maybe you only received an IP address, so that you can reach your web space with <code class="code codeInline" spellcheck="false" tabindex="0">1.2.3.4</code>.</li></ul><p>When you enter one of those to reach your web host, your web server shows what is in a folder of your web space. Often, that folder is called <code class="code codeInline" spellcheck="false" tabindex="0">public_html</code>. Say you own <code class="code codeInline" spellcheck="false" tabindex="0">example.com</code> and that’s what you set up on your server. You have created a subfolder called <code class="code codeInline" spellcheck="false" tabindex="0">forum</code> (always use lowercase letters!) and uploaded Vanilla to it (see <a href="https://github.com/vanilla/vanilla/blob/master/README.md#installation" rel="nofollow noreferrer ugc">installation below</a>). Then, you will be able to see the Vanilla installer when you visit <code class="code codeInline" spellcheck="false" tabindex="0">example.com/forum</code> in your browser.</p><h2 data-id="requirements">Requirements</h2><p>We strongly recommend:</p><ul><li><strong>PHP 7.3</strong> or higher</li><li>MySQL 5.7 or higher (or Percona/MariaDB equivalent)</li><li>SSL encryption (check out <a href="https://letsencrypt.org/" rel="nofollow noreferrer ugc">LetsEncrypt</a>)</li></ul><p>If your server is not running PHP 7.1 or higher, <strong>you should address this soon</strong>. PHP 7.0 has reached end of life and will no longer receive security patches. <strong>Vanilla’s support for PHP 7.0 will end soon</strong>.</p><p>Our <em>minimum</em> requirements are now:</p><ul><li>PHP 7.1 or newer. (<em>This changed to 7.2 in 2020.</em>)</li><li>PHP extensions mbstring (<code class="code codeInline" spellcheck="false" tabindex="0">--enable-mbstring</code>), cURL (<code class="code codeInline" spellcheck="false" tabindex="0">--with-curl</code>), GD (on by default), and PDO (on by default).</li><li>To <a href="https://success.vanillaforums.com/kb/articles/157-self-hosting-basics#migrating-to-vanilla" rel="nofollow noreferrer ugc">import into Vanilla</a>, you need MySQLi (<code class="code codeInline" spellcheck="false" tabindex="0">--with-mysqli</code>).</li><li>To use our social plugins, you need <a href="http://php.net/manual/en/openssl.installation.php" rel="nofollow noreferrer ugc">OpenSSL</a>.</li><li>MySQL 5.0 or newer (or Percona/MariaDB equivalent).</li><li>MySQL strict mode <a href="https://www.liquidweb.com/kb/how-to-disable-mysql-strict-mode/" rel="nofollow noreferrer ugc">disabled</a>.</li></ul><p>Vanilla ships with a <code class="code codeInline" spellcheck="false" tabindex="0">.htaccess</code> file required for Apache support. Using nginx or IIS may require additional configuration. To learn more, see <a href="https://success.vanillaforums.com/kb/articles/221" rel="nofollow noreferrer ugc">nginx</a>.</p><h2 data-id="installation">Installation</h2><ol><li>Upload Vanilla’s <a href="https://open.vanillaforums.com/addon/vanilla-core" rel="nofollow noreferrer ugc">pre-built version</a> to your server.</li><li>If you're using nginx, refer to our <a href="https://success.vanillaforums.com/kb/articles/221" rel="nofollow noreferrer ugc">nginx guide</a>.</li><li>Confirm the <code class="code codeInline" spellcheck="false" tabindex="0">cache</code>, <code class="code codeInline" spellcheck="false" tabindex="0">conf</code>, and <code class="code codeInline" spellcheck="false" tabindex="0">uploads</code> folders are writable by PHP.</li><li>Navigate to the folder where you uploaded Vanilla in your web browser.</li><li>Follow the on-screen instructions.</li></ol><p>If you encounter a problem, refer to the <a href="https://success.vanillaforums.com/kb/articles/157-self-hosting-basics#getting-help" rel="nofollow noreferrer ugc">Getting Help</a> section below.</p><h2 data-id="migrate-to-vanilla">Migrate to Vanilla</h2><ol><li>Get <a href="https://open.vanillaforums.com/addon/porter-core" rel="nofollow noreferrer ugc">Vanilla Porter</a> and verify it supports your platform.</li><li>Read the Advanced Uses notes on that page.</li><li>Upload it to your current server.</li><li>Navigate to the file in your web browser & run it.</li><li>Take the file it produces and import it to Vanilla via the Dashboard’s “Import” option.</li></ol><p>If you encounter a problem, refer to the <a href="https://success.vanillaforums.com/kb/articles/157-self-hosting-basics#getting-help" rel="nofollow noreferrer ugc">Getting Help</a> section below.</p><h2 data-id="use-maintenance-mode">Use Maintenance Mode</h2><p>You can temporarily halt ALL access to your site by putting it into <strong>Maintenance Mode</strong>. Users currently signed in with owner privileges (the user who created the site) will still be able to use the site.</p><h3 data-id="initiate-maintenance-mode">Initiate maintenance mode</h3><p>To put your site in Maintenance Mode, add this to <code class="code codeInline" spellcheck="false" tabindex="0">/conf/config.php</code> and save it:</p><ul><li><code class="code codeInline" spellcheck="false" tabindex="0">$Configuration['Garden']['UpdateMode'] = true;</code></li></ul><h3 data-id="turn-off-maintenance-mode">Turn off maintenance mode</h3><p>To end maintenance mode, delete the above code and save.</p><h2 data-id="getting-help">Getting Help</h2><ul><li><a href="https://success.vanillaforums.com/kb/categories/66-troubleshooting" rel="nofollow noreferrer ugc">Troubleshooting upgrades & installs</a></li><li><a href="http://docs.vanillaforums.com/" rel="nofollow noreferrer ugc">Official documentation</a></li><li><a href="https://open.vanillaforums.com/discussions" rel="nofollow noreferrer ugc">Vanilla community forums</a></li><li><a href="https://vanillaforums.com/plans" rel="nofollow noreferrer ugc">Official cloud hosting with professional support & migration services</a></li></ul><p><br></p> </article> </main>