Japanatron Logo

The following is a task outline for building an Ubuntu-based web-server to run Joomla and JomSocial.  I created this for my own notes, so apologies if it's a bit cryptic.

Ubuntu server

  • minimum install
  • choose LAMP & SSH server during install
  • static IP address


Install packages

  • php5-curl
  • php5-xmlrpc
  • ffmpeg
  • flvtool2
  • unzip
  • zip
  • phpmyadmin
  • wget
  • nano (optional)
  • webmin (optional)

Create DNS entries / zones (if necessary)

Apache

  • enable rewrite module
  • enable PHP module
  • allow override for site (.htaccess) in the site directives (under the site's virtual server config)


SSL

  • enable Apache SSL module (global config)
  • listen on port 443
  • change default server root to /var/www (document options)
  • generate a certificate using Webmin and set Apache to use the self-generated certificate (for now)
  • modify /etc/apache2/ports.conf to allow SSL on named virtual hosts


PHPMyAdmin

  • don't configure it for Apache during the install
  • create a virtual host on a custom port to /usr/share/phpmyadmin
  • add the listening port under Apache networking


Joomla

  • set file / folder permissions
  • set owner to www-data
  • set Joomla email settings - use ISP's SMTP server if you don't want to run mail services on the web-server
  • verify the file / folder permissions using a tool like Akeeba Admin Tools or RSFirewall


JomSocial

  • setup JomSocial cron job - wget -O /dev/null "http://www.domain.com/index.php?option=com_community&task=cron" > /dev/null
  • php.ini (/etc/php5/apache) configuration changes as suggested in JomSocial documentation

max_execution_time = 9000 ; Maximum execution time of each script, in seconds
max_input_time = 9000 ; Maximum amount of time each script may spend parsing request data
memory_limit = 1024M ; Maximum amount of memory a script may consume
post_max_size = 4096M ; Maximum size of POST data that PHP will accept.
upload_max_filesize = 4096M ; Maximum allowed size for uploaded files.

PHP Security

  • set expose_php to OFF in php.ini

Related Articles

Ubuntu 22.04 Nginx Build Outli...

I re-built my LEMP web-server fresh on Ubuntu 22.04 and learned some things along the way. This is my base build outline mostly created for my own notes. INS...

The Hunt For the Ultimate Free...

I've been a hard-core Untangle fan for several years now, but I recently wanted to explore other firewall options.  Being wrapped around a commercial product, U...

Elastix PBX - Voicemail Disabl...

I ran a yum update process on my Elastix PBX, updating all the packages.  The update process completed without error; however, voicemail was disabled on all use...

Zimbra - How to Change MTA EHL...

It's a good idea to match your Zimbra MTA hostname given during an EHLO with the hostname associated with your public IP address.su - zimbrazmprov mcf zimbraMta...