How to install Neos CMS on CentOS 7

How to install Neos CMS on CentOS 7

Neos is a free and open source content management system. It is written in PHP and uses its own framework flow. Neos is highly customizable and extensible. Neos allows the user to work with the content as products, events, news or articles. This article will explain the instalallation procedure of Neos CMS on CentOS 7.

Pre-Requisities

  • LAMP SETUP
  • Apache
  • Mysql ( create a database neosdb user protected by password)
  • Php version 7 and above with the following extensions
  • php71w-mbstring
  • php71w-pdo_mysql
  • php71w-cli
  • php71w-tokenizer
  • php71w-pecl-imagick

Installation procedure

The Composer is a dependency manager for PHP. So install and move the composer to another directory by executing the following commands.

[root@linuxhelp1 ~]# curl -sS https://getcomposer.org/installer | php
All settings correct for using Composer
Downloading...

Composer (version 1.4.2) successfully installed to: /root/composer.phar
Use it: php composer.phar
[root@linuxhelp1 ~]# mv composer.phar /usr/bin/composer

Now switch to the webroot directory of Apache web server and download Neos using following command.

[root@linuxhelp1 ~]# cd /var/www/html/
[root@linuxhelp1 html]#  composer create-project --no-dev neos/neos-base-distribution neos
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Installing neos/neos-base-distribution (3.1.3)
  - Installing neos/neos-base-distribution (3.1.3): Downloading (100%)        
Created project in neos
Loading composer repositories with package information
Updating dependencies
Package operations: 61 installs, 0 updates, 0 removals
  - Installing neos/composer-plugin (2.0.1): Downloading (100%)        
Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script
  - Installing ocramius/package-versions (1.1.2): Downloading (100%)        
Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script
  - Installing neos/utility-objecthandling (4.1.3): Downloading (100%)        
Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script
  - Installing neos/utility-arrays (4.1.3): Downloading (100%)        
Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script
  - Installing imagine/imagine (v0.6.3): Downloading (100%)        
Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script
  - Installing symfony/yaml (v2.8.25): Downloading (100%)        
Class NeosFlowComposerInstallerScripts is not autoloadable, can not call post-package-install script
- Installing symfony/polyfill-mbstring (v1.4.0): Downloading (100%)
.
.
.
>  NeosFlowComposerInstallerScripts::postPackageUpdateAndInstall
  - Installing neos/demo (3.1.3): Downloading (100%)        
>  NeosFlowComposerInstallerScripts::postPackageUpdateAndInstall
Writing lock file
Generating autoload files
ocramius/package-versions:  Generating version class...
ocramius/package-versions: ...done generating version class
>  NeosFlowComposerInstallerScripts::postUpdateAndInstall

Now you will need to create a virtual host configuration file for your web application. Open the configuration file by using the vim editor. Enter the following lines in the configuration file and save the file.

[root@linuxhelp1 ~]# vim /etc/httpd/conf.d/neos.conf

< VirtualHost *:80> 
    DocumentRoot " /var/www/html/neos/Web" 
    ServerName 192.168.7.231
    ServerAlias linuxhelp1 *.linuxhelp1.com
    < Directory " /var/www/html/neos/Web" > 
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
        Require all granted
    < /Directory> 
    ErrorLog " /var/log/httpd/www.linuxhelp1.com-error_log" 
    CustomLog " /var/log/httpd/www.linuxhelp1.com-access_log"  combined
< /VirtualHost>                        

Go to the Neos directory and list the contents of the directory by executing the following command.

[root@linuxhelp1 html]# cd neos/
[root@linuxhelp1 neos]# ls -l
total 236
drwxr-xr-x. 2 root root    103 Jul 18 17:30 bin
drwxr-xr-x. 4 root root     41 Apr 27 21:36 Build
-rw-r--r--. 1 root root   1920 Jul 18 17:41 composer.json
-rw-r--r--. 1 root root 218445 Jul 18 17:41 composer.lock
drwxrwxrwx. 5 root root    126 Jul 18 17:41 Configuration
drwxrwxrwx. 2 root root      6 Jul 18 17:41 Data
-rwxr-xr-x. 1 root root    426 Jul 18 17:41 flow
-rw-r--r--. 1 root root    270 Jul 18 17:41 flow.bat
drwxr-xr-x. 7 root root     87 Jul 18 17:40 Packages
-rw-r--r--. 1 root root    858 Jul 18 17:41 Readme.rst
-rw-r--r--. 1 root root   2609 Jul 18 17:41 Upgrading.rst
drwxrwxrwx. 3 root root     76 Jul 18 17:41 Web

Now provide the ownership, read and wire permissions of the application to web server user using the following command.

[root@linuxhelp1 neos]# cd /var/www/html/neos ./flow core:setfilepermissions root apache apache
[root@linuxhelp1 neos]# chown -R apache:apache /var/www/html/neos/Web/
[root@linuxhelp1 neos]# chown 777 /var/www/html/neos/Web/

Restart the Apache service, by executing the restart command.

[root@linuxhelp1 neos]# systemctl restart httpd

Switch over to your browser and provide the target machines’ s IP address along with the following link http://192.168.7.231/setup and run it.

Modify the permission for the following path.

[root@linuxhelp1 neos]# chmod 777 /var/www/html/neos/Packages

Return and refresh the browser. The page shows the ongoing initialising setup process.

After the setup, the login page gets displayed on the screen. Copy the path shown below to open the setup password.

Copy the setup password from the terminal.

[root@linuxhelp1 ~]# cat /var/www/html/neos/Data/SetupPassword.txt
The setup password is:
6GDoPW1M

After you successfully logged in, this file is automatically deleted for security reasons.
Make sure to save the setup password for later use.

Paste the setup password and click Login button to continue.

In next interface, it will check for the setup requirements. The installer will automatically choose imagick module for image manipulation.

Configure your database by providing your database user name, password and db name.

The connection is established on the database that you have created.

The next page prompts for creating administrator account containing the first and last name and user credentials. Enter the required details and click next.

Once the setup is complete, it will automatically show the successfull installation content on the screen.

Now open a new tab in the browser and provide the machine' s IP http://your IP (i.e) http://192.168.7.231 to get the demo page of the site.

The instalallation procedure is complete. It was so simple, Wasn' t it?. Neos CMS can create customized content for different languages.

FAQ
Q
How do I disable directory indexing in grand cms?
A
You can use “Options -Indexes” in respective directory directive.

Ex:



Options -Indexes

Q
What is the maximum size for input files in Neos CMS?
A
The NEOS Server cannot accept input files larger than 16 MB. The 16 MB limit applies to submissions via the web interface, email and XML-RPC.
Q
How can I submit subroutines or data for my objective function in separate files?
A
It depends on the solver. Some solvers require all of the subroutines to be in a single file, while others allow separate files. Consult the solver's interface page for specific details.
Q
How do I check the solver queue in Neos CMS?
A
From the NEOS Server page, click on the View Job Queue and Job Results link to go to the job admin page. Then, select the View Job Queue button and click Submit.
Q
Where can I find answers to my AMPL questions?
A
There are a number of resources available on the AMPL website. There is an AMPL FAQ as well as information and documentation for the solvers that work with AMPL.