Setup the Customer Portal (CentOS 7)
This documentation is for customers still on CentOS. The latest releases of BillMax are on Debian and other sections of documentation should be referenced.
-
Generate a SSL certificate to be used for encryption of data between the
Customer Portal and the Customer Portal daemon (Edge). As root perform
/usr/local/billmax/bin/setup_edge -
The portal requires at a minimum, PHP version 7.3. This version is not yet
available via the standard CentOS® repositories. To install
PHP 7.3 and related modules. As root perform:
-
For CentOS 7,
wget -qhttp://rpms.remirepo.net/enterprise/remi-release-7.rpm. -
For CentOS 7.x®,
rpm -i remi-release-7*.rpm -
Execute
yum-config-manager --enable remi-php73 -
Execute
yum install php -
Execute
yum -y install httpd mod_ssl php php-cli php-common php-pdo php-xml php-mbstring php-gd php-soap mod_php -
Execute
systemctl restart httpd
-
For CentOS 7,
-
Generate a new application encryption key:
-
cd/usr/local/billmax/portal.v2 -
php artisan key:generate
-
-
Each client portal instance requires a Remote Application entry. To create an
entry, perform:
- Select from the Main Menu.
- Select New from the Context Menu.
- Enter Name.
- Enter Description.
- Enter Email. Note that this field is only used for the old portal. The new portal uses a client side configuration instead.
- Enter Phone. Note that this field is only used for the old portal. The new portal uses a client side configuration instead.
- Choose Customer Portal for Type.
- Enter Portal URL. This is base URL for portal. Specify the https://<portal-host>/<path-to-portal>. This is used in email links for the forgotten password and login id recovery tasks. You may use https://<billmaxserver>/testportal if wanting to test off the BillMax server.
- Choose Company and Customer Profile. These values are used only for new customer registrations.
- Enter Application Login Name and Application Password. These will be used by the Customer Portal client software to authenticate access to the Customer Portal Server.
- Modify the Customer Portal Login Parameters as required. Note that the security questions and CAPTCHA options are presently not used in the new portal.
-
vi/usr/local/billmax/portal.v2/config/edge.php. Enter the username and password using the value specified in Application Login Name and Application Password previously entered via the Staff Portal. Make sure the server entry has the correct name or IP address and port. You may configure other settings in this file as needed. -
Start the edge service. As the root user:
-
systemctl start bx_edge
-
-
Test functionality by pointing a browser at
https://<billmaxserver>/testportal
where <billmaxserver> is the address of the BillMax
server. A view similar to what is shown indicate success. If you get a
permission error, check zbillmax.conf in
/etc/httpd/conf.d. In the
/usr/local/billmax/html section, change
AllowOverride None to AllowOverride
All and restart the Apache server.
- Click Login to test access to the edge service.
-
It is recommended that all customizations to the portal be done on the BillMax
host then "pushed" to the remote web server after each update. Doing this will
ensure your portal remains current and your customization are retained across
upgrades. To copy the files, perform:
-
cd /usr/local/billmax/portal.v2 -
tar --exclude=.svn -c -z -f /tmp/portal.v2.tgz.Be sure to include the period at the end of this command. -
scp/tmp/portal.v2.tgz <remote-user>@<remote-host>:
-
-
When installing the portal at a remote site, it must be installed so that only
the portal's public directory and it's contents are in the Apache web server
document tree. This can be accomplished by setting (typically in a
VirtualHostsection) the DocumentRoot variable to the public directory path or a symbolic link may be used. As an example of the latter technique, the /usr/local/billmax/html/testportal link points to /usr/local/billmax/portal.v2/public. - When installing the portal at a remote site, configure the Apache server so the portal files are only served via HTTPS. Either disable port 80 or redirect port 80 traffic to HTTPS.
-
When installing the portal at a remote site, ensure that the Apache server
allows the use of
.htaccessfiles by using the "AllowOverride All" directive in the appropriate <Directory> section for the portal in thehttpd conffile.