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

My Adventures in Spam Blocking

I hate spam.  I detest it.  And I'm not talking about the scrumptious processed meat product.  I think you all know the spam I'm referring to—the kind peddling ...

Joomla Running on Nginx and Ub...

What follows is an outline I compiled while researching how to tighten security on a Nginx web server. NOTE 1: Ubuntu 14.04 LTS was used for this. NOTE 2: This ...

Toshiba 37Z2000 TV - Sensitive...

My Toshiba 37Z2000 TV has a cool feature that allows me to record TV over my network to a CIFS (aka Samba) file share on my FreeNAS server.  Unfortunately, howe...

The Hunt for the Ultimate VPS ...

If IT geek-dom were a crime, I'd be on death row by now.  Fortunately, it is not; so I continue my dorky IT pursuits--the latest of which is finding a VPS cloud...