How to install WebsiteBaker with Nginx on CentOS 7

To install WebsiteBaker with Nginx on CentOS 7

WebsiteBaker is a content management tool that is free, easy and secure for the users to create a new website within minutes. It is designed by XHTML, CSS and jQuery. It has a revolutionary new feature called as droplets that just allows the user to drop PHP codes anywhere while creating the website. It also offers management of files and media, adjustable template system, infinite number of add-ons and group based Access Privilege System. This tutorial covers the installation procedure of WebsiteBaker with Nginx on CentOS 7.

Installation procedure

To begin with the installation procedure, install the epel release and Nginx by running the yum command and press y to continue with the installation process.

[root@localhost ~]# yum install epel-release -y & &  yum install nginx -y
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirror.nbrc.ac.in
 * extras: mirror.dhakacom.com
 * updates: mirror.dhakacom.com
Resolving Dependencies
-->  Running transaction check
--->  Package epel-release.noarch 0:7-9 will be installed
-->  Finished Dependency Resolution
.
.
.
Installed:
  nginx.x86_64 1:1.10.2-1.el7                                                             
Dependency Installed:
  nginx-all-modules.noarch 1:1.10.2-1.el7                                                 
  nginx-filesystem.noarch 1:1.10.2-1.el7                                                  
  nginx-mod-http-geoip.x86_64 1:1.10.2-1.el7                                              
  nginx-mod-http-image-filter.x86_64 1:1.10.2-1.el7                                       
  nginx-mod-http-perl.x86_64 1:1.10.2-1.el7                                               
  nginx-mod-http-xslt-filter.x86_64 1:1.10.2-1.el7                                        
  nginx-mod-mail.x86_64 1:1.10.2-1.el7                                                    
  nginx-mod-stream.x86_64 1:1.10.2-1.el7                                                  

Complete!

Next install the webtatic repo for PHP by executing the following command.

[root@localhost ~]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Retrieving https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
warning: /var/tmp/rpm-tmp.tCYMCh: Header V4 RSA/SHA1 Signature, key ID 62e74ca5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:webtatic-release-7-3             ################################# [100%]

Install the PHP package with its required dependencies and execute the following command.

[root@localhost ~]# yum install -y php71w php71w-fpm php71w-opcache php71w-cli php71w-mysql php71w-gd php71w-ldap php71w-odbc php71w-pdo php71w-pecl-memcache php71w-pear php71w-mbstring php71w-xml php71w-xmlrpc php71w-mbstring php71w-snmp php71w-soap php71w-devel php71w-json php5-mcrypt
Loaded plugins: fastestmirror, langpacks
webtatic                                                           | 3.6 kB  00:00:00     
(1/2): webtatic/x86_64/group_gz                                    |  448 B  00:00:00     
(2/2): webtatic/x86_64/primary_db                                  | 153 kB  00:00:02     
Loading mirror speeds from cached hostfile
 * base: mirror.nbrc.ac.in
 * epel: ftp.cuhk.edu.hk
 * extras: mirror.dhakacom.com
 * updates: mirror.dhakacom.com
.
.
.
  php71w-pear.noarch 1:1.10.4-1.w7            php71w-snmp.x86_64 0:7.1.9-2.w7             
  php71w-soap.x86_64 0:7.1.9-2.w7             php71w-xml.x86_64 0:7.1.9-2.w7              
  php71w-xmlrpc.x86_64 0:7.1.9-2.w7          

Dependency Installed:
  net-snmp.x86_64 1:5.7.2-28.el7         net-snmp-agent-libs.x86_64 1:5.7.2-28.el7       
  pcre-devel.x86_64 0:8.32-17.el7        php71w-process.x86_64 0:7.1.9-2.w7              
  unixODBC.x86_64 0:2.3.1-11.el7        
Dependency Updated:
  net-snmp-libs.x86_64 1:5.7.2-28.el7            openssl.x86_64 1:1.0.2k-8.el7           
  openssl-libs.x86_64 1:1.0.2k-8.el7             pcre.x86_64 0:8.32-17.el7               

Complete!

Then install the MySQL package using yum command and give y to continue with the installation.

[root@localhost ~]# rpm -Uvh http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
Retrieving http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-release-el7-5    ################################# [100%]

[root@localhost ~]# yum install mysql-server -y
Loaded plugins: fastestmirror, langpacks
mysql-connectors-community                                         | 2.5 kB  00:00:00     
mysql-tools-community                                              | 2.5 kB  00:00:00     
mysql56-community                                                  | 2.5 kB  00:00:00     
(1/3): mysql-connectors-community/x86_64/primary_db                |  16 kB  00:00:00     
(2/3): mysql-tools-community/x86_64/primary_db                     |  35 kB  00:00:00     
(3/3): mysql56-community/x86_64/primary_db                         | 174 kB  00:00:00     
Loading mirror speeds from cached hostfile
 * base: mirror.nbrc.ac.in
 * epel: ftp.cuhk.edu.hk
 * extras: mirror.dhakacom.com
.
.
.
Installed:
  mysql-community-libs.x86_64 0:5.6.37-2.el7 mysql-community-server.x86_64 0:5.6.37-2.el7

Dependency Installed:
  mysql-community-client.x86_64 0:5.6.37-2.el7                                            
  mysql-community-common.x86_64 0:5.6.37-2.el7                                            
  perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7                                            
  perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7                                             
  perl-DBI.x86_64 0:1.627-4.el7                                                           
  perl-IO-Compress.noarch 0:2.061-2.el7                                                   
  perl-Net-Daemon.noarch 0:0.48-5.el7                                                     
  perl-PlRPC.noarch 0:0.2020-14.el7                                                       
Replaced:
  mariadb-libs.x86_64 1:5.5.52-1.el7                                                      

Complete!

Start the MySQL service and configure the MySQL installation by running the following set of commands.

[root@localhost ~]# systemctl start mysqld
[root@localhost ~]# mysql_secure_installation

Create a database for WebsiteBaker and flush the privileges to the user by running the set of commands given below.

[root@localhost ~]# mysql -u root -p
mysql>  CREATE DATABASE wbaker 
Query OK, 1 row affected (0.01 sec)
mysql>  FLUSH PRIVILEGES 
Query OK, 0 rows affected (0.00 sec)
mysql>  exit 

Now start the Nginx and php-fpm service.

[root@localhost ~]# systemctl start nginx
[root@localhost ~]# systemctl start php-fpm

Next move the opt directory and download the WebsiteBaker latest version using wget command followed by the download link.

[root@localhost ~]# cd /opt/
[root@localhost opt]# wget https://addon.websitebaker.org/media/wbaddons/8711fe9f9352a61ba7368f98a7071fd1/wb-2.10.0-67-20170304.zip

Extract the downloaded zip file using unzip command.

[root@localhost opt]# unzip wb-2.10.0-67-20170304.zip -d wb

Copy the extracted directory to Nginx root directory.

[root@localhost opt]# cp -R /opt/wb /usr/share/nginx/html/

Now enter the WebsiteBaker root directory and rename config.php.new to config.php.

[root@localhost opt]# cd /usr/share/nginx/html/wb/
[root@localhost wb]# cp config.php.new config.php

Set the file execution and owner permission to the file by executing the following set of commands.

[root@localhost wb]# chmod -R 777 /usr/share/nginx/html/wb
[root@localhost wb]# chown -R nginx.nginx /usr/share/nginx

Then configure the php-fpm file using vim editor and enter the following contents in the file and save it.

[root@localhost wb]# vim /etc/php-fpm.d/www.conf
user = nginx
group = nginx
 listen = 127.0.0.1:9000
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nginx
listen.group = nginx
 php_value[session.save_path]    = /var/lib/php/session

Next configure Nginx for WebsiteBaker using vim editor and enter the following contents in the file and save it.

[root@localhost wb]# vim /etc/nginx/nginx.conf

    server {
        listen       80 default_server 
        listen       [::]:80 default_server 
        server_name  192.168.7.192 
        root         /usr/share/nginx/html/wb 
        index index.php index.html index.htm 
        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf 

        #location / {
        #}
location / {
        try_files $uri $uri/ =404 
        }

location ~ .php$ {
try_files $uri =404 
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock 
fastcgi_index index.php 
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name 
include fastcgi_params 
}

Now set cgi path info value 1 to 0 in PHP confiugration file.

[root@localhost wb]# vim /etc/php.ini
cgi.fix_pathinfo=0

Restart the Nginx and php-fpm service.

[root@localhost wb]# systemctl restart nginx
[root@localhost wb]# systemctl restart php-fpm

Switch over to the browser and type the IP address http://192.168.7.192. The installation wizard appears on the screen. Check the system requirements before starting the installation procedure.

Enter the database details in the installation wizard.

Enter the website details such as name, admin user details and click the install WebsiteBaker option.

Enter the admin credentials to login.

The admin panel of the WebsiteBaker appears on the screen and use the plethora of options in the dashboard.

The installation procedure of WebsiteBaker with Nginx on CentOS 7.

FAQ
Q
where to download the package of WebsiteBaker using terminal?
A
download the WebsiteBaker latest version using wget command followed by the download link.
# wget https://addon.websitebaker.org/media/wbaddons/8711fe9f9352a61ba7368f98a7071fd1/wb-2.10.0-67-20170304.zip
Q
how to install the PHP using rpm command?
A
install the webtatic repo for PHP by executing the following command.
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Q
what are the features of WebsiteBaker?
A
Features of WebsiteBaker are
• Easy to use interface
• WYSIWYG-editors in backend
• Support of multiple languages
• Management of files and media
• Adjustable due to its template system
• Infinite extensible bec
Q
What is main term of using the WebsiteBaker?
A
WebsiteBaker is a PHP-based content management system which enables users to produce websites with ease. It has been designed from the ground up to simplify the task of creating and maintaini
Q
What does the error message headers already sent in WebsiteBaker?
A
The error message headers already sent in WebsiteBaker 'Cannot modify header information - headers already sent.' occurs if a WB routine tries to send a header after text is displayed in the browser. If this error occurs during