{"id":11688,"date":"2022-02-23T14:08:45","date_gmt":"2022-02-23T11:08:45","guid":{"rendered":"https:\/\/kifarunix.com\/?p=11688"},"modified":"2024-03-09T09:29:40","modified_gmt":"2024-03-09T06:29:40","slug":"install-processwire-on-ubuntu-22-04","status":"publish","type":"post","link":"https:\/\/kifarunix.com\/install-processwire-on-ubuntu-22-04\/","title":{"rendered":"Install ProcessWire on Ubuntu 22.04"},"content":{"rendered":"\n<p>Follow through this guide to install ProcessWire on Ubuntu 22.04. <a href=\"https:\/\/processwire.com\/about\/\" target=\"_blank\" rel=\"noreferrer noopener\">ProcessWire<\/a> is an opensource PHP based content management system and framework.<\/p>\n\n\n\n<div class=\"wp-block-rank-math-toc-block\" id=\"rank-math-toc\"><h2>Table of Contents<\/h2><nav><ul><li><a href=\"#install-process-wire-on-ubuntu-22-04\">Install ProcessWire on Ubuntu 22.04<\/a><ul><li><a href=\"#run-system-update\">Run system update<\/a><\/li><li><a href=\"#install-apache-web-server-on-ubuntu-22-04\">Install Apache Web Server on Ubuntu 22.04<\/a><\/li><li><a href=\"#install-maria-db-on-ubuntu-22-04\">Install MariaDB on Ubuntu 22.04<\/a><\/li><li><a href=\"#create-database-and-database-user-for-process-wire-cms\">Create Database and Database user for ProcessWire CMS<\/a><\/li><li><a href=\"#install-php-and-other-required-php-modules-for-process-wire-cms\">Install PHP and Other Required PHP Modules for ProcessWire CMS<\/a><\/li><li><a href=\"#download-process-wire-cms-installer\">Download ProcessWire CMS Installer<\/a><\/li><li><a href=\"#create-apache-site-configuration-for-process-wire\">Create Apache Site Configuration for ProcessWire<\/a><\/li><li><a href=\"#install-process-wire-cms-on-ubuntu\">Install ProcessWire CMS on Ubuntu<\/a><\/li><li><a href=\"#reference\">Reference<\/a><\/li><\/ul><\/li><li><a href=\"#other-tutorials\">Other Tutorials<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"install-process-wire-on-ubuntu-22-04\">Install ProcessWire on Ubuntu 22.04<\/h2>\n\n\n\n<p>ProcessWire is PHP based application and thus, it requires LAMP\/LEMP stack to run. We use LAMP stack in this setup.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"run-system-update\">Run system update<\/h3>\n\n\n\n<p>Update your system package cache;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>apt update<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"install-apache-web-server-on-ubuntu-22-04\">Install Apache Web Server on Ubuntu 22.04<\/h3>\n\n\n\n<p>Run the command below to install Apache web server on Ubuntu 22.04;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>apt install apache2 -y<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"install-maria-db-on-ubuntu-22-04\">Install MariaDB on Ubuntu 22.04<\/h3>\n\n\n\n<p>ProcessWire requires MySQL or MariaDB, 5.0.15 or greater. By default, Ubuntu 22.04 provides MariaDB 10.5 in its default repos.<\/p>\n\n\n\n<p>Hence, execute the command below to install MariaDB;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>apt install mariadb-{server,client} -y<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"create-database-and-database-user-for-process-wire-cms\">Create Database and Database user for ProcessWire CMS<\/h3>\n\n\n\n<p>Once the installation of MariaDB is done, run the first initial script to remove test databases, disable remote root login, remove test users <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mysql_secure_installation<\/code><\/pre>\n\n\n\n<p>Next, login to the MariaDB and create the database and database user for ProcessWire CMS;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mysql -u root -p<\/code><\/pre>\n\n\n\n<p>Replace the username\/password and name of the database accordingly;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>create database pwirecmsdb;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>grant all on pwirecmsdb.* to pwiredamin@localhost identified by 'PASSWORD';<\/code><\/pre>\n\n\n\n<p>Reload table privileges and exit the database;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>flush privileges;\nquit<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"install-php-and-other-required-php-modules-for-process-wire-cms\">Install PHP and Other Required PHP Modules for ProcessWire CMS<\/h3>\n\n\n\n<p>PHP 8.x is the default PHP version available on Ubuntu 22.04 repisitories.<\/p>\n\n\n\n<p>In this setup, we will use PHP 7.4.<\/p>\n\n\n\n<p>To install PHP 7.4 on Ubuntu 22.04;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>add-apt-repository ppa:ondrej\/php --yes &amp;&gt; \/dev\/null<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>sed -i 's\/jammy\/focal\/' \/etc\/apt\/sources.list.d\/ondrej-ubuntu-php-jammy.list<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>apt update<\/code><\/pre>\n\n\n\n<p>Next, Install PHP and required modules for ProcessWire CMS and other required packages;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>apt install php7.4 php7.4-{mysql,gd,zip} libapache2-mod-php7.4 -y git<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"download-process-wire-cms-installer\">Download ProcessWire CMS Installer<\/h3>\n\n\n\n<p>There are different methods in which you can install ProcessWire CMS tool; <a href=\"https:\/\/processwire.com\/docs\/start\/install\/new\/#installation-from-zip-file\" target=\"_blank\" rel=\"noreferrer noopener\">Via ZIP file<\/a>, <a href=\"https:\/\/processwire.com\/docs\/start\/install\/new\/#installation-from-github\" target=\"_blank\" rel=\"noreferrer noopener\">install from Github<\/a>, using composer, e.t.c.<\/p>\n\n\n\n<p>We use the Github installation method in this guide.<\/p>\n\n\n\n<p>Thus, clone the ProcessWire Github repository to your web root directory, we use <strong><code>\/var\/www\/html\/processwire<\/code><\/strong>, in this example setup.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git clone https:\/\/github.com\/processwire\/processwire.git \/var\/www\/html\/processwire<\/code><\/pre>\n\n\n\n<p>Set the proper ownership of the ProcessWire web root directory;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chown -R www-data: \/var\/www\/html\/processwire<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"create-apache-site-configuration-for-process-wire\">Create Apache Site Configuration for ProcessWire<\/h3>\n\n\n\n<p>Next, create Apache site configuration for ProcessWire.<\/p>\n\n\n\n<p>Simply, copy and paste the command below to create the configuration. Be sure to make appropriate changes as per your environment setup.<\/p>\n\n\n\n<pre class=\"scroll-box\"><code>tee \/etc\/apache2\/sites-available\/processwire.conf &lt;&lt; 'EOL'\n&lt;VirtualHost *:80&gt;\n    ServerName cms.kifarunix-demo.com\n    ServerAdmin webmaster@localhost\n    DocumentRoot \/var\/www\/html\/processwire\n\n    ErrorLog ${APACHE_LOG_DIR}\/error.log\n    CustomLog ${APACHE_LOG_DIR}\/access.log combined\n\n    &lt;Directory \/var\/www\/html&gt;\n        Options Indexes FollowSymLinks MultiViews\n            AllowOverride All\n            Require all granted\n    &lt;\/Directory&gt;\n&lt;\/VirtualHost&gt;\nEOL\n<\/code><\/pre>\n\n\n\n<p>Check Apache configuration syntax;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>apachectl -t<\/code><\/pre>\n\n\n\n<p>If the sample output is <code>Syntax OK<\/code>. then you are good.<\/p>\n\n\n\n<p>Disable Default Apache site config;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>a2dissite 000-default.conf<\/code><\/pre>\n\n\n\n<p>Enable Apache&#8217;s ProcessWire site config;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>a2ensite processwire.conf<\/code><\/pre>\n\n\n\n<p>Enable Required ProcessWire Apache Rewrite Modules<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>a2enmod rewrite<\/code><\/pre>\n\n\n\n<p>Restart Apache Web service;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>systemctl restart apache2<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"install-process-wire-cms-on-ubuntu\">Install ProcessWire CMS on Ubuntu<\/h3>\n\n\n\n<p>Next, you need to finalize the installation of ProcessWire CMS on Ubuntu 22.04 via the browser.<\/p>\n\n\n\n<p>Open Apache ports on Firewall to allow external access.<\/p>\n\n\n\n<p>If you are using UFW;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw allow \"Apache Full\"<\/code><\/pre>\n\n\n\n<p>Then access your ProcessWire system via the address <strong><code>http:\/\/&lt;domain-name&gt;<\/code><\/strong>.<\/p>\n\n\n\n<p>You are welcomed by setup page;<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire.png\" class=\"td-modal-image\"><div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1209\" height=\"645\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire.png\" alt=\"Install ProcessWire on Ubuntu 22.04\" class=\"wp-image-11691\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire.png?v=1645613688 1209w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-768x410.png?v=1645613688 768w\" sizes=\"(max-width: 1209px) 100vw, 1209px\" \/><\/figure><\/div><\/a><\/div>\n\n\n\n<p>Click <strong>Get Started<\/strong> to proceed.<\/p>\n\n\n\n<p>Select <strong>Installation Profile<\/strong> and proceed with the setup.<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/install-profile.png\" class=\"td-modal-image\"><div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1081\" height=\"944\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/install-profile.png\" alt=\"Install ProcessWire on Ubuntu 22.04\" class=\"wp-image-11692\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/install-profile.png?v=1645613715 1081w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/install-profile-768x671.png?v=1645613715 768w\" sizes=\"(max-width: 1081px) 100vw, 1081px\" \/><\/figure><\/div><\/a><\/div>\n\n\n\n<p>Ensure all the ProcessWire PHP modules are met.<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-php-modules-check.png\" class=\"td-modal-image\"><div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1159\" height=\"858\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-php-modules-check.png\" alt=\"\" class=\"wp-image-11693\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-php-modules-check.png?v=1645613756 1159w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-php-modules-check-768x569.png?v=1645613756 768w\" sizes=\"(max-width: 1159px) 100vw, 1159px\" \/><\/figure><\/div><\/a><\/div>\n\n\n\n<p>Next, define the database connection settings as created above and set the timezone.<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/db-connections-tz.png\" class=\"td-modal-image\"><figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1050\" height=\"894\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/db-connections-tz.png\" alt=\"\" class=\"wp-image-11694\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/db-connections-tz.png?v=1645613779 1050w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/db-connections-tz-768x654.png?v=1645613779 768w\" sizes=\"(max-width: 1050px) 100vw, 1050px\" \/><\/figure><\/a><\/div>\n\n\n\n<p>Ensure the File permissions are set correctly. As well as the site hostname.<\/p>\n\n\n\n<p>You can choose to enable\/disable debug mode depending on whether it is a live or development site.<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/permissions-hostnames.png\" class=\"td-modal-image\"><div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1014\" height=\"784\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/permissions-hostnames.png\" alt=\"Install ProcessWire on Ubuntu 22.04\" class=\"wp-image-11695\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/permissions-hostnames.png?v=1645613806 1014w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/permissions-hostnames-768x594.png?v=1645613806 768w\" sizes=\"(max-width: 1014px) 100vw, 1014px\" \/><\/figure><\/div><\/a><\/div>\n\n\n\n<p>If you get an error that the database has some existing tables, you can choose to remove them and proceed.<\/p>\n\n\n\n<p>Set the Admin URL and Account Credentials;<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-admin-account.png\" class=\"td-modal-image\"><div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1087\" height=\"613\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-admin-account.png\" alt=\"\" class=\"wp-image-11696\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-admin-account.png?v=1645613835 1087w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-admin-account-768x433.png?v=1645613835 768w\" sizes=\"(max-width: 1087px) 100vw, 1087px\" \/><\/figure><\/div><\/a><\/div>\n\n\n\n<p>Clean up the directories and files listed below are no longer needed&nbsp;and continue.<\/p>\n\n\n\n<p>Install summary;<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/install-summary.png\" class=\"td-modal-image\"><div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1069\" height=\"885\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/install-summary.png\" alt=\"\" class=\"wp-image-11697\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/install-summary.png?v=1645613861 1069w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/install-summary-768x636.png?v=1645613861 768w\" sizes=\"(max-width: 1069px) 100vw, 1069px\" \/><\/figure><\/div><\/a><\/div>\n\n\n\n<p>Login to Admin Panel<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-admin-interface.png\" class=\"td-modal-image\"><div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1821\" height=\"690\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-admin-interface.png\" alt=\"\" class=\"wp-image-11698\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-admin-interface.png?v=1645613885 1821w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-admin-interface-768x291.png?v=1645613885 768w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-admin-interface-1536x582.png?v=1645613885 1536w\" sizes=\"(max-width: 1821px) 100vw, 1821px\" \/><\/figure><\/div><\/a><\/div>\n\n\n\n<p>View Sample ProcessWire Site<\/p>\n\n\n\n<div><a href=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-minimal-site.png\" class=\"td-modal-image\"><div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1444\" height=\"870\" src=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-minimal-site.png\" alt=\"\" class=\"wp-image-11699\" title=\"\" srcset=\"https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-minimal-site.png?v=1645613907 1444w, https:\/\/kifarunix.com\/wp-content\/uploads\/2022\/02\/processwire-minimal-site-768x463.png?v=1645613907 768w\" sizes=\"(max-width: 1444px) 100vw, 1444px\" \/><\/figure><\/div><\/a><\/div>\n\n\n\n<p>And there you go. You can now use ProcessWire to develop your sites as you so wish. That concludes our guide on how to install ProcessWire CMS on Ubuntu 22.04.<\/p>\n\n\n\n<p>Read more on <a href=\"https:\/\/processwire.com\/docs\/start\/\" target=\"_blank\" rel=\"noreferrer noopener\">Getting started with ProcessWire<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"reference\">Reference<\/h3>\n\n\n\n<p><a href=\"https:\/\/processwire.com\/docs\/start\/install\/new\/\" target=\"_blank\" rel=\"noreferrer noopener\">Installing ProcessWire CMS<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"other-tutorials\">Other Tutorials<\/h2>\n\n\n\n<p><a href=\"https:\/\/kifarunix.com\/install-latest-wordpress-with-lamp-stack-on-ubuntu-20-04\/\" target=\"_blank\" rel=\"noreferrer noopener\">Install latest WordPress with LAMP Stack on Ubuntu 20.04<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/kifarunix.com\/install-automad-cms-on-debian-10-ubuntu-18-04\/\" target=\"_blank\" rel=\"noreferrer noopener\">Install Automad CMS on Debian 10\/Ubuntu 18.04<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/kifarunix.com\/install-wondercms-with-nginx-on-debian-10\/\" target=\"_blank\" rel=\"noreferrer noopener\">Install WonderCMS with Nginx on Debian 10<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Follow through this guide to install ProcessWire on Ubuntu 22.04. ProcessWire is an opensource PHP based content management system and framework. Install ProcessWire on Ubuntu<\/p>\n","protected":false},"author":1,"featured_media":11700,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_lock_modified_date":false,"footnotes":""},"categories":[121,1087],"tags":[2998,4629,4632,4631,4633,4630],"class_list":["post-11688","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-howtos","category-cms","tag-cms","tag-install-processwire-ubuntu","tag-installing-processwire-cms-on-ubuntu","tag-processwire-cms","tag-ubuntu-22-04-cms","tag-ubuntu-install-processwire","generate-columns","tablet-grid-50","mobile-grid-100","grid-parent","grid-50","resize-featured-image"],"_links":{"self":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/11688"}],"collection":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/comments?post=11688"}],"version-history":[{"count":5,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/11688\/revisions"}],"predecessor-version":[{"id":20397,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/posts\/11688\/revisions\/20397"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/media\/11700"}],"wp:attachment":[{"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/media?parent=11688"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/categories?post=11688"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kifarunix.com\/wp-json\/wp\/v2\/tags?post=11688"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}