Skip to content

Latest commit

 

History

History
121 lines (84 loc) · 5.23 KB

help-installation.md

File metadata and controls

121 lines (84 loc) · 5.23 KB

Installation

There are two ways you can install October, either using the Wizard or Command-line installation process. Before you proceed, you should check that your server meets the minimum system requirements.

Minimum System Requirements

October CMS has a few system requirements:

  1. PHP 5.4 or higher
  2. PDO PHP Extension
  3. cURL PHP Extension
  4. MCrypt PHP Extension
  5. ZipArchive PHP Library
  6. GD PHP Library

As of PHP 5.5, some OS distributions may require you to manually install the PHP JSON extension. When using Ubuntu, this can be done via apt-get install php5-json.

Wizard installation

The wizard installation is a recommended way to install October. It is simpler than the command-line installation and doesn't require any special skills.

  1. Prepare a directory on your server that is empty. It can be a sub-directory, domain root or a sub-domain.
  2. Download the installer archive file.
  3. Unpack the installer archive to the prepared directory.
  4. Grant writing permissions on the installation directory and all its subdirectories and files.
  5. Navigate to the install.php script in your web browser.
  6. Follow the installation instructions.

Troubleshooting installation

  1. An error 500 is displayed when downloading the application files: You may need to increase or disable the timeout limit on your webserver. For example, Apache's FastCGI sometimes has the -idle-timeout option set to 30 seconds.

Apache configuration

If your webserver is running Apache there are some extra system requirements:

  1. mod_rewrite should be installed
  2. AllowOverride option should be switched on

In some cases you may need to uncomment this line in the .htaccess file:

##
## You may need to uncomment the following line for some hosting environments,
## if you have installed to a subdirectory, enter the name here also.
##
# RewriteBase /

If you have installed to a subdirectory, you should add the name of the subdirectory also:

RewriteBase /mysubdirectory/

Nginx configuration

There are small changes required to configure your site in Nginx.

nano /etc/nginx/sites-available/default

Use the following code in server section.

if (!-e $request_filename)
{
    rewrite ^/(.*)$ /index.php?/$1 break;
    break;
}
rewrite themes/.*/(layouts|pages|partials)/.*.htm /index.php break;
rewrite uploads/protected/.* /index.php break;
rewrite app/.* /index.php break;

Lighttpd configuration

If your webserver is running Lighttpd you can use the following configuration to run OctoberCMS.

Open your site configuration file with your favorite editor.

nano /etc/lighttpd/conf-enabled/sites.conf

Paste the following code in the editor and change the host address and server.document-root to match your project.

$HTTP["host"] =~ "example.domain.com" {
    server.document-root = "/var/www/example/"

    url.rewrite-once = (
        "^/(plugins|modules/(system|backend|cms))/(([\w-]+/)+|/|)assets/([\w-]+/)+[-\w^&'@{}[\],$=!#().%+~/ ]+\.(jpg|jpeg|gif|png|svg|swf|avi|mpg|mpeg|mp3|flv|ico|css|js|woff|ttf)(\?.*|)$" => "$0",
        "^/(system|themes/[\w-]+)/assets/([\w-]+/)+[-\w^&'@{}[\],$=!#().%+~/ ]+\.(jpg|jpeg|gif|png|svg|swf|avi|mpg|mpeg|mp3|flv|ico|css|js|woff|ttf)(\?.*|)$" => "$0",
        "^/uploads/public/[\w-]+/.*$" => "$0",
        "^/(favicon\.ico|robots\.txt|sitemap\.xml)$" => "$0",
        "(.*)" => "/index.php$1"
    )
}

Setting up the crontab

By default queued jobs are executed using a simple database driven Queue driver for Laravel and repeating scheduled tasks are managed by Dispatcher.

For these automated tasks to operate correctly, you should add the following to your Crontab using crontab -e and replace /path/to/artisan with the absolute path to the artisan file in the root directory of October:

* * * * * php /path/to/artisan queue:cron 1>> /dev/null 2>&1
* * * * * php /path/to/artisan scheduled:run 1>> /dev/null 2>&1

Note: If you are adding this to /etc/cron.d you'll need to specify a user immediately after * * * * *.

Command-line installation

If you feel more comfortable with a command-line, there is a CLI install process on the Console interface page.