PhpWiki is a web based wiki content management system written in PHP. You can easily create and edit pages through web browser using PhpWiki. In this tutorial, we will show you how to install and configure PhpWiki on Ubuntu 16.04.
A server running Ubuntu-16.04.
A non-root user with sudo privileges setup on your server.
Update the System
First, you will need to update the system with latest version. You can do this with the following commands:
sudo apt-get update -ysudo apt-get upgrade -y
##Installing LAMP Server
Before starting, you will need to install the LAMP stack as a prerequisites of PhpWiki.
You can install LAMP using the following command:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libc-ares2 libcitadel4 libev4 libical1a libsieve2-1
Use 'sudo apt autoremove' to remove them.
apache2-doc apache2-suexec-pristine | apache2-suexec-custom php-pear
The following NEW packages will be installed:
apache2 libapache2-mod-php7.0 mariadb-server php7.0 php7.0-mysql
0 upgraded, 5 newly installed, 0 to remove and 60 not upgraded.
Need to get 0 B/1,450 kB of archives.
After this operation, 5,351 kB of additional disk space will be used.
Selecting previously unselected package apache2.......
Once installation is completed, start the Apache service and enable rewrite module:
sudo systemctl start apache2sudo a2enmod rewrite
First, download the latest stable version of PhpWiki from here
Next, unzip the downloaded archive in to /var/www/html directory:
sudo unzip phpwiki-1.5.5.zip -d /var/www/html/
Next, change the directory to /var/www/html and rename phpwiki-1.5.5:
cd /var/www/html/sudo mv phpwiki-1.5.5 phpwiki
Next, set the proper permissions for the phpwiki directory:
sudo chown -R www-data:www-data phpwiki
Configuring MariaDB For miniBB
By default, MariaDB is not secured, so you will need to secure it first. You can secure it with the mysql_secure_installation script.
Answer all the questions as shown below:
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
You already have a root password set, so you can safely answer 'n'.
Change the root password? [Y/n] n
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
Remove anonymous users? [Y/n] Y
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
- Removing privileges on test database...
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
Next, login to MariaDB and create a database and database user for PhpWiki.
mysql -u root -p
Enter your MariaDB root password and hit enter. Once you are logged in to your database, create a database for PhpWiki:
Truth be told, it’s difficult for a web application that doesn’t have some kind of identification, even if you don’t see it as a security measure in and of itself. The Internet is a kind of lawless land, and even on free services like Google’s, authentication ensures that abuses will...
Although data persistence is almost always a fundamental element of applications, Node.js has no native integration with databases. Everything is delegated to third-party libraries to be included manually, in addition to the standard APIs. Although MongoDB and other non-relational databases are the most common choice with Node because if you...