If your users experience 404 errors (“page not found”) when they click menu items on your site, it could be that the SEF URLs setting in Joomla breaks your menu items, creating URLs that can’t be found, you still have hope.

 

Check for mod_rewrite

First, find out whether your Apache installation includes mod_rewrite. If mod_rewrite is being loaded, you can see that in Joomla. Click on the Site button, located in the top left-hand corner of any back-end page. From the drop-down menu, select System Information. After the System Information page loads, select the PHP information tab. The complete sum of your Joomla site’s PHP information is now at your finger tips.

Configure Joomla to use mod_rewrite

When mod_rewrite is available, you can configure Joomla to use it by renaming a file in Joomla’s root directory. Follow these steps:

 

  1. Look in the directory where you installed Joomla for a file named htaccess.txt.

  2. Rename this file .htaccess.

  3. Restart Apache.

    When Apache restarts, your new .htaccess file takes effect.

  4. Choose Site →Global Configuration in any back-end page to open the Global Configuration page.

  5. In the SEO Settings pane, select the Yes radio button in the Use Apache mod_rewritesection.

 

This information is taken from How to Resolve “Page Not Found” Errors on Joomla Sites. See also the page Enabling Search Engine Friendly (SEF) URLs on Apache on Joomla! Doc.