[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Setting up Joomla 2.5 CMS in Slackware 14.0 64bit

This HowTo describes simplified instruction for installing Joomla 2.5 content management system in Slackware 14.0. For more complex instructions you may want to read …

  • start conditions is freshly installed Slackware 14.0 with option “Full install”.
  • In configuring stage you choose to automatically start applications “apache” (rc.httpd) and “MySQL” (rc.mysqld)

Configure MySQL

  1. Copy with rename /etc/mysql/my-large.cnf or another file from that directory, who meet your requirements, to /etc/my.cnf
  2. Edit that /etc.my.cnf to add three lines after [mysqld], as there:
    collation-server = utf8_unicode_ci
    init-connect='SET NAMES utf8'
    character-set-server = utf8
  3. After that, restart MySQL server.
  4. Do as root
    mysql_install_db --user=mysql 
  5. Do as root

    , and set mysql root password ( and write it down or remember), and choose all default answers

  6. After that, do
     mysql -u root -p 

    after write user password, be in mysql>. write

     CREATE USER 'joomla_db_username'@'localhost' IDENTIFIED BY 'joomla_db_user_password'; 

    , where joomla_db_user is user, who you make for under who your joomla stores information in mysql. joomla_db_user_paswword is your choosing password for that mysql user.

  7. write
     GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON yourdatabasename_for_joomla.* to 'joomla_db_username'@'localhost'; 
  8. after that do

    and then

  9. and finally, do from bash
     mysqladmin -u joomla_db_username -p create yourdatabasename_for_joomla 

    it need input of your “joomla_db_username” password, seems as “joomla_db_user_password” in that instruction.

  10. That's all, your MySQL will be ready to install and configure Joomla.

Configure Apache Webserver

  1. Open /etc/httpd/httpd.conf in a text editor such as vi or nano.
  2. Change the ServerAdmin and ServerName variables to your liking.
  3. Change the first encounter of Directive
    <Directory />
        AllowOverride none
        Require all denied


    <Directory />
        Options FollowSymLinks Includes
        AllowOverride None
  4. Next, edit “/etc/httpd/httpd.conf” to configure a new DocumentRoot. By default the Apache DocumentRoot is the directory “/srv/httpd/htdocs”. We will change that to the Joomla installation directory. In this example, we will install Joomla to “/srv/httpd/beautifulsite.com”.
    Search for the two directives
    DocumentRoot "/srv/httpd/htdocs"


    <Directory "/srv/httpd/htdocs">

    and change both values from “/srv/httpd/htdocs” to “/srv/httpd/beautifulsite.com”.

  5. Next, look at below section:
        # Possible values for the Options directive are "None", "All",
        # or any combination of:
        #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
        # Note that "MultiViews" must be named *explicitly* --- "Options All"
        # doesn't give it to you.
        # The Options directive is both complicated and important.  Please see
        # http://httpd.apache.org/docs/2.4/mod/core.html#options
        # for more information.
        Options Indexes FollowSymLinks
        # AllowOverride controls what directives may be placed in .htaccess files.
        # It can be "All", "None", or any combination of the keywords:
        #   Options FileInfo AuthConfig Limit
        AllowOverride None
        # Controls who can get stuff from this server.
        Require all granted

    and change following:

    Options Indexes FollowSymLinks Includes MultiViews ExecCGI
    AllowOverride All
    Order allow, deny
    Allow from All

    and comment the line “Require all granted”

  6. At the bottom of the file, change the section
    <IfModule dir_module>
        DirectoryIndex index.html

    adding “index.shtml index.php” after “index.html”.

  7. Comment out the string “AddHandler cgi-script .cgi
  8. Uncomment the php module:
    Include /etc/httpd/mod_php.conf
  9. following modules must be uncommented:
    LoadModule authn_file_module lib64/httpd/modules/mod_authn_file.so
    LoadModule authn_core_module lib64/httpd/modules/mod_authn_core.so
    LoadModule authz_host_module lib64/httpd/modules/mod_authz_host.so
    LoadModule authz_groupfile_module lib64/httpd/modules/mod_authz_groupfile.so
    LoadModule authz_user_module lib64/httpd/modules/mod_authz_user.so
    LoadModule authz_core_module lib64/httpd/modules/mod_authz_core.so
    LoadModule access_compat_module lib64/httpd/modules/mod_access_compat.so
    LoadModule auth_basic_module lib64/httpd/modules/mod_auth_basic.so
    LoadModule reqtimeout_module lib64/httpd/modules/mod_reqtimeout.so
    LoadModule filter_module lib64/httpd/modules/mod_filter.so
    LoadModule mime_module lib64/httpd/modules/mod_mime.so
    LoadModule log_config_module lib64/httpd/modules/mod_log_config.so
    LoadModule env_module lib64/httpd/modules/mod_env.so
    LoadModule headers_module lib64/httpd/modules/mod_headers.so
    LoadModule setenvif_module lib64/httpd/modules/mod_setenvif.so
    LoadModule version_module lib64/httpd/modules/mod_version.so
    LoadModule proxy_module lib64/httpd/modules/mod_proxy.so
    LoadModule proxy_connect_module lib64/httpd/modules/mod_proxy_connect.so
    LoadModule proxy_ftp_module lib64/httpd/modules/mod_proxy_ftp.so
    LoadModule proxy_http_module lib64/httpd/modules/mod_proxy_http.so
    LoadModule proxy_fcgi_module lib64/httpd/modules/mod_proxy_fcgi.so
    LoadModule proxy_scgi_module lib64/httpd/modules/mod_proxy_scgi.so
    LoadModule proxy_ajp_module lib64/httpd/modules/mod_proxy_ajp.so
    LoadModule proxy_express_module lib64/httpd/modules/mod_proxy_express.so
    LoadModule lbmethod_byrequests_module lib64/httpd/modules/mod_lbmethod_byrequests.so
    LoadModule lbmethod_bytraffic_module lib64/httpd/modules/mod_lbmethod_bytraffic.so
    LoadModule lbmethod_bybusyness_module lib64/httpd/modules/mod_lbmethod_bybusyness.so
    LoadModule mpm_event_module lib64/httpd/modules/mod_mpm_event.so
    LoadModule unixd_module lib64/httpd/modules/mod_unixd.so
    LoadModule status_module lib64/httpd/modules/mod_status.so
    LoadModule autoindex_module lib64/httpd/modules/mod_autoindex.so
    LoadModule cgi_module lib64/httpd/modules/mod_cgi.so
    LoadModule dir_module lib64/httpd/modules/mod_dir.so
    LoadModule alias_module lib64/httpd/modules/mod_alias.so
    ### joomla mod_rewrite!
    Loadmodule rewrite_module lib64/httpd/modules/mod_rewrite.so
    #for gzip compression, joomla!
    LoadModule deflate_module lib64/httpd/modules/mod_deflate.so

and save the file.

  1. Next, edit the file “/etc/httpd/php.ini
  2. Search for string
    output_buffering = 4096 

    and change them to

    output_buffering = Off 
  3. Save the file, and finally restart the webserver:
    root@darkstar:~# /etc/rc.d/rc.httpd restart
In the “CustomLog” section of /etc/httopd/httpd.conf, if you plan to use webalizer, comment “CustomLog ….. common” and uncomment “CustomLog …. combined” strings
In /etc/httpd/httpd.conf, you can comment out the VirtualHost configuration, if you intend run many webservers on your host. If not, leave it, as it is.
#Include /etc/httpd/extra/httpd-vhosts.conf

Set Up Joomla 2.5

  1. Download a Joomla tarball at http://www.joomla.org/download.html, choose the “Full package, Zip” archive.
  2. We install Joomla as the Apache Webserver's DocumentRoot, which we configured as “/srv/httpd/beautifulsite.com” in the previous section. Create a new directory called “beautifulsite.com” under “/srv/httpd/”. We will end up with the new directory “/srv/httpd/htdocs/beautifulsite.com” which will be used by Apache as the DocumentRoot.
  3. Uncompress the joomla zip-file into that directory:
    root@darkstar:~# unzip Joomla_2.5.9-Stable-Full_Package.zip -d /srv/httpd/htdocs/beautifulsite.com
  4. As root, change the file ownership to the Apache user:
    root@darkstar:~# chown -R apache:apache /srv/httpd/beautifulsite.com
  5. The initial Joomla configuration is done in a web browser (preferably from another computer workstation). Enter our “http://beautifulserver.comURL in the browser's addressbar. This will start start the web-based configuration of our newly installed Joomla CMS. When you get to the database configuration, the better choice is “mysqli”. Input is also required for the Joomla database username and password. The rest of the configuration is straight-forward.
  6. After that, if you want to use SEO-friendly settings ( URL rewriting), then rename htaccess.txt in your root of current joomla catalog to .htaccess .


 howtos:network_services:joomla ()