66
Troubleshooting Joomla! Problems (Have you tried turning it OFF and ON again?) Peter Martin, www.db8.nl. twitter: @pe7er Joomladay.de – 12+13 september 2014

Troubleshooting Joomla! problems - Joomladay Germany 2014

Embed Size (px)

DESCRIPTION

Blank screens, deprecated errors, missing Class errors, can't login, can't install, my website is slow, my website got hacked... We all have run into one or two of those. If not, other people have... If you don't believe me, just visit http://forum.joomla.org/ :-) On the basis of the 10 most common problems seen in Joomla Forum, Peter will learn you to: * identify a problem * identify the real problem behind it * solve that problem * or get help quickly by asking the right questions In the process you might learn something more about Joomla's Debug mode, .htaccess, phpMyAdmin, permissions, XAMPP, Akeeba Backup, Admin Tools, Google Chrome Inspect Element, FireFox Firebug, diff...

Citation preview

Troubleshooting Joomla! Problems

(Have you tried turning it OFF and ON again?)

Peter Martin, www.db8.nl. twitter: @pe7er

Joomladay.de – 12+13 september 2014

Joomladay Deutschland 2014Joomladay Deutschland 2014

Overview Presentation

>>> Sheets via: www.db8.nl <<<

a)Introduction

b)Troubleshooting process

c)Extensions – in short

d)Ten common errors and questions

e)Some useful tools

f) Questions?

Joomladay Deutschland 2014Joomladay Deutschland 2014

1. Extensions, an introduction

Joomladay Deutschland 2014Joomladay Deutschland 2014

1. Extensions, an introduction

Joomladay Deutschland 2014Joomladay Deutschland 2014

Joomladay Deutschland 2014Joomladay Deutschland 2014

Joomladay Deutschland 2014Joomladay Deutschland 2014

b) Troubleshooting process

Joomladay Deutschland 2014Joomladay Deutschland 2014

b) Troubleshooting process

Operating System (OS)

Operating System (OS)

Webserver

PHP (version!)

MySQL database server

LoadbalancerBrowser

Browser addons

Virusscanner

Local Area Network

Firewall

Wide Area Network

Domain Name System

Modem/Router

Joomla database

Joomla files

Joomla extensions

3rd party extensions

.htaccess Server overrides

Parameters

Access Control List (ACL)

Ser

ver

wit

h w

ebsi

te

Co

mp

ute

r o

f w

ebsi

te v

isit

or

ISP

Use

r

Chair

Keyboard

File/folder permissions

Joomladay Deutschland 2014Joomladay Deutschland 2014

b) Troubleshooting process1. Make a backup first! (eg Akeeba)

2. Know difference between Components, Modules, Plugins, Templates & Language files

3. Find the cause of the error:● Reproduce the error with different parameters● Change one parameter at a time & then test.● Check all different “chains” & vary them “extremely”

4. Ask for help:● Ask the right question in right forum & right subject title● Give sufficient information, be concise & bullet lists

5. Be “Open Source” & report back!

Joomladay Deutschland 2014Joomladay Deutschland 2014

c) Extensions – in short

Joomladay Deutschland 2014Joomladay Deutschland 2014

c) Extensions – 5 typesExtending Joomla's functionality:

1. Components

2. Modules

3. Plugins

4. Templates

5. Language Files

Joomladay Deutschland 2014Joomladay Deutschland 2014

c) Extensions – Component● Determines functionality of a page

– Multiple “Modi”: CRUD (Create, Read, Update, Delete)– Only one component on a page

● Activation

– via URL + &option=com_componentname

● Example

– com_content

Joomladay Deutschland 2014Joomladay Deutschland 2014

c) Extensions – Module● Supportive, “Widget”, only display to screen (“Module Positie”)

– One mode (e.g. Read from database & Display)– Multiple modules on a page

● Activation

– via menu item: URL + &Itemid=x

● Example

– mod_breadcrumbs

Joomladay Deutschland 2014Joomladay Deutschland 2014

c) Extensions – Plugin● Supportive. Works invisible in background.

– One mode: does one thing (e.g. search & replace)– Multiple plugins at a time

● Activation

– via certain “events” (of “hooks”) in components

● Example Plugin

– Content - Email Cloaking

Joomladay Deutschland 2014Joomladay Deutschland 2014

c) Extensions – Template● Supportive. Does layout of website

– One mode (Display HTML with CSS & “Elements”)– One template on a page, multiple possible

● Activation

– Default and assigned ones in parameter Menu Item

● Example

– Joomla 3.x default template “Protostar”

Joomladay Deutschland 2014Joomladay Deutschland 2014

c) Extensions – Language Files● Supportive. Translation for “system labels”

– One language at a time (on a page)– Multiple possible→multilanguage website

● Activation

– Default & Language Overrides in database

● Example/language/en-GB/en-GB.ini

Joomladay Deutschland 2014Joomladay Deutschland 2014

c) Extensions – Working togetherJoomla's search functionality

● Module (M)– Search inputbox

● Component (C)– Form– Results

● Plugin (P)– Articles– Categories– Contacts

C Form

C Results

C Processing

P Search in database table

M Form

P Search in database table

P Search in database table

Joomladay Deutschland 2014Joomladay Deutschland 2014

d) 10 Common Errors & Questions

Joomladay Deutschland 2014Joomladay Deutschland 2014

1. Blank Page

Joomladay Deutschland 2014Joomladay Deutschland 2014

1. Error: “Blank Page”● After Upgrade - blank page in the front and backend!● Getting blank page when enabling the Search Engine

Friendly● Why my site is blank page after moving to other server?● Searching returns blank page!● Blank page after admin login

Joomladay Deutschland 2014Joomladay Deutschland 2014

Have you tried turning it off

and on again?

Joomladay Deutschland 2014Joomladay Deutschland 2014

1. Solution “Blank Page”Blank page = PHP error & display errors = OFF

1. Joomla admin: System > Global Configuration > [Server] > Error Reporting: Maximum

2. Increase PHP error level:

.htaccess

php_flag display_errors onphp_value error_reporting -1

Joomladay Deutschland 2014Joomladay Deutschland 2014

2. Deprecated

Joomladay Deutschland 2014Joomladay Deutschland 2014

2. Error: “Deprecated”● Deprecated: Function eregi() is deprecated in

/home/public_html/includes/sef.php on line 393● Deprecated: Function set_magic_quotes_runtime() is

deprecated in /var/www/libraries/phpmailer/phpmailer.php on line 1218

● Deprecated: Assigning the return value of new by reference is deprecated in /var/www/modules/mod_exmenu-j15/exmenu/exmenu.class.php on line 56

● Deprecated: Function split() is deprecated in /var/www/libraries/phpmailer/phpmailer.php on line 470

Joomladay Deutschland 2014Joomladay Deutschland 2014

I'm sorry, are you from

the past?

Joomladay Deutschland 2014Joomladay Deutschland 2014

2. Solution “Deprecated”Error → Warning: “Some PHP function will not be available anymore in next PHP version”

1. Get it fixed!● Joomla?

Report in bugtracker● 3rd party extension?

Contact developer with warning message

2. Hide warning● In php.ini:

error_reporting = E_ALL & ~E_DEPRECATED● In .htaccess:

php_flag display_errors off

Joomladay Deutschland 2014Joomladay Deutschland 2014

3. Missing Class

Joomladay Deutschland 2014Joomladay Deutschland 2014

3. Error: “Missing Class”● Fatal error: Class 'JConfig' not found in

/var/www/includes/framework.php on line 56● Fatal error: Class 'XMLReader' not found in

/libraries/cms/feed/factory.php on line 69● Fatal error: Class 'ModMenuHelper' not found in

/joomla/administrator/modules/mod_menu/tmpl/default_enabled.php on line 173

● Fatal error: Class 'JError' not found in /public_html/includes/framework.php on line 42

● Fatal error: Class 'JMailHelper' not found

Joomladay Deutschland 2014Joomladay Deutschland 2014

I am the head of IT and I have it on

good authority that

if you type "Google" into Google, you can break the Internet.

Joomladay Deutschland 2014Joomladay Deutschland 2014

3. Solution “Missing Class”1. Google the error

● Not too specific!● Remove “unique text” like your own folder structure

2. Re-upload files● get original Joomla full package from same version● upload all files overwriting the ones on the server

Joomladay Deutschland 2014Joomladay Deutschland 2014

4. Change did not work

Joomladay Deutschland 2014Joomladay Deutschland 2014

4. Error: “Change did not work”● I changed x but does not work● Start Publishing does not work at all● Show Title does not work● Article changes not visible in front end● Main menu not showing on Multilingual website● Articles option not working in Joomla 2.5● Articles not showing...!? How could this be?● My site description not showing on google● Images not visible in Category Blog● Submenu items not visible anymore in J3.1.1?

Joomladay Deutschland 2014Joomladay Deutschland 2014

Memory is RAM!

Joomladay Deutschland 2014Joomladay Deutschland 2014

4. Solution “Change did not work”1. Refresh (“hard refresh”: CTRL + F5)

2. Check with other browser

3. Empty browser cache

4. Empty Joomla's cache

5. Disable hosting server cache → via .htaccess

6. Switch off SEF URLs

7. Change parameters with “extreme” numbers

8. Check Template Overrides

9. Check Template for hardcoded stuff

10.Check ACL, Language etc

Joomladay Deutschland 2014Joomladay Deutschland 2014

5. 404

Joomladay Deutschland 2014Joomladay Deutschland 2014

5. Error: “Links give 404 error”● Menus don't work● Site does not work after move to other server● 404 error for all article/site links● 404 Error on All Links● MAIN MENU 404 ERROR● please help!!!! menu items give 404 error● Menu item no longer working - returns with 404 error● 404 errors on all links, front page of joomla fine● Strange URL's in Joomla 2.5.9 URGENT HELP● URGENT help error 404

Joomladay Deutschland 2014Joomladay Deutschland 2014

What does IT stand for?

What does it stand for?....

What doesn't it stand for?

Joomladay Deutschland 2014Joomladay Deutschland 2014

5. Solution “Links give 404 error”SEF = Search Engine Friendly

1. Apache:rename htaccess.txt to .htaccess

2. Microsoft IIS7: rename web.config.txt to web.config

3. Nginx:put in virtual domain block:location / { index index.php index.html index.htm;try_files $uri $uri/ /index.php?q=$request_uri;}

Joomladay Deutschland 2014Joomladay Deutschland 2014

6. Can't login

Joomladay Deutschland 2014Joomladay Deutschland 2014

6. Error: “Can't login”● I can't login to my admin panel● Site Hacked and now locked out of admin● Joomla 2.5 can't login to Admin or Site● Cannot log in into /administrator back-end● Can't login admin or user.● Cannot Access Administration Page● Cannot login to backend● After move of site cannot login, loop● Locked out of the Admin● Super User Locked Out of Joomla 2.5

Joomladay Deutschland 2014Joomladay Deutschland 2014

Hello

Hello Computer

Hello

Joomladay Deutschland 2014Joomladay Deutschland 2014

6. Solution “Can't login”● Use phpMyAdmin

– Reset password: new password + “Function” MD5,after login → User Manager, New password!

– add new Super Admin + password, see: http://docs.joomla.org/How_do_you_recover_or_reset_your_admin_password%3F

– check plugins in #__extensions:plg_user_Joomla → enabled = 1 ?plg_authentication_joomla → enabled = 1 ?

● Security extension? → ?token-after-url

Joomladay Deutschland 2014Joomladay Deutschland 2014

7. Can't install

Joomladay Deutschland 2014Joomladay Deutschland 2014

7. Error: “Can't install”● Cannot install any templates, plugins, modules or

components● Cannot install extensions on Joomla! 2.5● Help - Can't install extensions, JFolder::files: Path is not a

folder.● JInstaller::install: Failed to copy file● Unable to Find Install Package● Cannot install XYZ in Joomla on Hosting ZYX● Joomla cannot install; JSON issue● JInstaller::Install: Cannot find Joomla XML setup file● Can't install extensions

Joomladay Deutschland 2014Joomladay Deutschland 2014

Joomladay Deutschland 2014Joomladay Deutschland 2014

7. Solution “Can't install”● With specific Extension or all Extensions?● Extension right Joomla version?● Check Permissions

– Files 644, Folders 755– System > System Information > Directory Permissions

● Check Ownership (FTP user vs Webserver)– With FTP

● Check PHP File Upload & Upload Size– file_uploads = ON, upload_max_filesize = e.g. 10M

● Check Disk Space● Unzip in /tmp/ folder & “Install from Directory”?

Joomladay Deutschland 2014Joomladay Deutschland 2014

8. How to remove?

Joomladay Deutschland 2014Joomladay Deutschland 2014

8. Question: “How to remove XYZ”● Changing the background color?● How can I Remove the "Powered by XYZ"?● How to change the colour of the article title text?● Change logo?● Beez3 header change?● Possibility to change text color in article?● Logo change position?● Change module position beez20?● Change H3 to another header in moduletable:● Remove copyright info at the bottom?

Joomladay Deutschland 2014Joomladay Deutschland 2014

Joomladay Deutschland 2014Joomladay Deutschland 2014

8. Solution “How to remove XYZ”● Analyze HTML/CSS with browser

– Google Chrome or FireFox + addons:● Web Developer● FireBug (or Google Chrome's Inspector)

● Module? Display Module Positions:– Extensions > Template Manager > Preview Module Positions:

enabled– URL + ?tp=1

● Template? Change template as test● Plugin? Disable plugin as test● Component or Module? HTML override?● IDE (Netbeans, Eclipse, Firestorm)

Joomladay Deutschland 2014Joomladay Deutschland 2014

9. The Need for Speed

Joomladay Deutschland 2014Joomladay Deutschland 2014

9. Error: “Website slow”● Why is my website so slow to load?● Slow website! Is it my hosting?● Website loading to slow● Changes to web page slow to load● My website is loading extremely slow● Slow queries on large website● Slow loading website (unstable performance)● Very slow page loading (Waiting on fonts.googleapis.com)● Trying to increase the speed of my website● It's too slow

Joomladay Deutschland 2014Joomladay Deutschland 2014

Have you tried forcing

an unexpected reboot?

Joomladay Deutschland 2014Joomladay Deutschland 2014

9. Solution “Website slow”● Analyse database queries

– Use Joomla's debug mode & check queries● Analyze loading time

– Use Yslow (FireFox / Chrome browser addon)analyse loading of website

● Compare with other hosting– Backup (with Akeeba)– Local webserver op PC (with XAMPP)– Restore backup on local PC, test speed & compare

Joomladay Deutschland 2014Joomladay Deutschland 2014

10. S1t3 G0t H@ck3d!

Joomladay Deutschland 2014Joomladay Deutschland 2014

10. Error: “Site got hacked”● Unwanted Advertiser Pop-up appearing on admin front end.● I got hacked.... Cant reset superuser password● Just got hacked, advice needed● I just got hacked by xxxx -aarrgghh!● Website got hacked by insert PHP code in all file● Joomla site hacked● Several sites compromised● My site has been hacjed! please help● Webhost malware scan deletes some files● Got Hacked

Joomladay Deutschland 2014Joomladay Deutschland 2014

Dear Sir stroke Madam

Fire, exclamation mark

Fire, exclamation mark

Help me, exclamation mark

Joomladay Deutschland 2014Joomladay Deutschland 2014

10. Solution “Site got hacked”● Do you have a back-up?● Find the cause

– Did you keep all software up-to-date?– Analyze server log files– Search for similar hacks on shared hosting neighbors– Outdated Joomla & extensions version?– Weird files in /images/ ?

● SSH access?

– Search recent modified files– Search for “eval(base64_decode”

● http://docs.joomla.org/Security_Checklist

– You have been hacked or defaced

Joomladay Deutschland 2014Joomladay Deutschland 2014

e) Tools

Joomladay Deutschland 2014Joomladay Deutschland 2014

e) Tools 1/3Joomla

● Other Joomla site with example installation● Joomla Debug mode● Joomla SEF OFF -> full URL with all commands● Joomla System Info

● PHP Information● Directory Permissions (and or use FTP to analyze permissions

& owner/group)● Admin Tools (3rd party Extension)

● Analyze & fix directory permissions● Repair & optimize database tables

Joomladay Deutschland 2014Joomladay Deutschland 2014

e) Tools 2/3Server

● Webserver access & error logfiles● PHP error logfile● .htaccess

Database● phpMyAdmin

Code (PHP, HTML, Language strings)● IDE (e.g. NetBeans, Eclipse, FireStorm)

Joomladay Deutschland 2014Joomladay Deutschland 2014

e) Tools 3/3HTML Output

● Inspect HTML / CSS● Google Chrome → Inspect Element● FireFox + Firebug Addon

● Web Developer Addon (Chrome + FireFox)● Yslow (Browser Addon)

Database● Akeeba Backup● XAMPP● diff (GUI: Meld, WinMerge)

Joomladay Deutschland 2014Joomladay Deutschland 2014

Joomladay Deutschland 2014Joomladay Deutschland 2014

Questions?● Presentation available at www.db8.nl

Peter Martin

e-mail: info at db8.nl

website: www.db8.nl

twitter: @pe7er

Joomladay Deutschland 2014Joomladay Deutschland 2014

Used Photos 1/2● IT Crowd © 2006-2010, Produced by Talkback Thames for Channel 4

Television Corporation.

● IT Crowd photos: http://spoilertv.co.uk

● power button - "gerard79" http://www.sxc.hu/photo/1009485

● Old Polish TV - Konrado Fedorczyko http://www.sxc.hu/photo/1187553

● Discarded - Therese Branton http://www.sxc.hu/photo/705372

● chains - Pablo Herrera http://www.sxc.hu/photo/1381655

● Motherboard 4 - Lisa Zanchi http://www.sxc.hu/photo/103914

● note paper - ilker http://www.sxc.hu/photo/1266532

● Roadside Assistance Required - jamie brelsford http://www.sxc.hu/photo/603001

Joomladay Deutschland 2014Joomladay Deutschland 2014

Used Photos 2/2● Doodled desks 2 - "igoghost" http://www.sxc.hu/photo/1193228

● Tree of Change 1 - Kimberly Vohsen http://www.sxc.hu/photo/1077609

● _error - Alexandre Galant http://www.sxc.hu/photo/682383

● Lock - Robert Linder http://www.sxc.hu/photo/1395379

● tap joint - Asif Akbar http://www.sxc.hu/photo/864387

● claws - esra su http://www.sxc.hu/photo/206896

● Speedometer – Abdulhamid AlFadhly http://www.sxc.hu/photo/1390189

● Crowbar - Richard Dudley http://www.sxc.hu/photo/854266

● Tools - J Boontje http://www.sxc.hu/photo/805571

● signs signs - Jason Antony http://www.sxc.hu/photo/751034