Custom Error Pages?

kuyenmotdivad

Well-known member
Hi,

If I use Custom Error Pages on my website do I still need to use anything in the .htaccess file on my website as if I include any of the .htaccess file my Custom Error Pages wont work.

Example (this is part of my .htaccess file)
PHP:
  ErrorDocument 400 /e/400.php
  ErrorDocument 401 /e/401.php
  ErrorDocument 403 /e/403.php
  ErrorDocument 404 /e/404.php
  ErrorDocument 500 /e/500.php
Example (this is the .htaccess file used by XF)
PHP:
#    Mod_security can interfere with uploading of content such as attachments. If you
#    cannot attach files, remove the "#" from the lines below.
#<IfModule mod_security.c>
#    SecFilterEngine Off
#    SecFilterScanPOST Off
#</IfModule>

ErrorDocument 401 default
ErrorDocument 403 default
ErrorDocument 404 default
ErrorDocument 500 default

<IfModule mod_rewrite.c>
    RewriteEngine On

    #    If you are having problems with the rewrite rules, remove the "#" from the
    #    line that begins "RewriteBase" below. You will also have to change the path
    #    of the rewrite to reflect the path to your XenForo installation.
    #RewriteBase /xenforo

    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^(data|js|styles|install) - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]
</IfModule>
 

Brogan

XenForo moderator
Staff member
You don't need any entries in your .htaccess for custom error pages.

You can just set it up via cPanel and/or add the custom pages to your web root.
 

Mike

XenForo developer
Staff member
Note that with the XF htaccess (needed for friendly URLs) custom error pages won't really be used (within the XF directory). The htaccess maps all URLs to XF. The ErrorDocument lines are there because it's quite common for them to reference, for example, 500.shtml which may itself not be found, which redirects to XF and throws a misleading error message.
 

kuyenmotdivad

Well-known member
If I takeout this part.

PHP:
ErrorDocument 401 default
ErrorDocument 403 default
ErrorDocument 404 default
ErrorDocument 500 default
And put this in its place.

PHP:
  ErrorDocument 400 /e/400.php
  ErrorDocument 401 /e/401.php
  ErrorDocument 403 /e/403.php
  ErrorDocument 404 /e/404.php
  ErrorDocument 500 /e/500.php

<IfModule mod_rewrite.c>
    RewriteEngine On

    #    If you are having problems with the rewrite rules, remove the "#" from the
    #    line that begins "RewriteBase" below. You will also have to change the path
    #    of the rewrite to reflect the path to your XenForo installation.
    #RewriteBase /xenforo

    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^(data|js|styles|install) - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]
</IfModule>
it wont work at all, but if I takout all the XF .htaccess code it works.
 
Top