While working on your website, you may be redirected to the InfinityFree 403 error page. This article explains why this can happen, and what you can do to solve it.
The website directory or missing (or is in the wrong location)
Before checking your website, you should double check the directory on your account that your domain name is linked to.
By default, when you create a website with a certain domain name, that domain name will be linked to the folder named htdocs
. Any additional domains added after that will be assigned their own directory. If you were to add the domain example.com
to your account, it would be linked to a directory named example.com/htdocs
.
Please note that if you delete the original domain name from your account and add it again, it will be handled as if it was an additional domain name. So removing and re-adding the domain may link the domain to a different directory!
You can view the directory that your domain is linked to by logging in to the client area, and go to Accounts → select your account → Domains.
If the directory of your domain name is missing or empty, then you will see a 403 Forbidden error. So please make sure that your website is uploaded to the right directory.
The directory does not contain an index file
If you try to request a URL without a file name in the URL (e.g. http://example.com/
or http://example.com/blog/
), the server will look for a so-called index file.
An index file is a file with the name index.php
, index.html
, index.htm
or index2.html
in the folder you’re trying to access. By default, the server will look for files in that order. Regarding index files, please note the following:
- The server will look only for files in the specific directory being requested, not in subdirectories.
- Our servers are cAsE sEnSiTiVe, so calling the file
Index.php
orindex.HTML
will not work.
If no index file is found, you will be redirected to a 403 Forbidden page.
There are a few different ways to fix this:
- Upload an index file to the right location (recommended).
- You can create a file with the name
.htaccess
in the directory and add the lineOptions +Indexes
. This will cause the server to show a list of files and directories instead. - You can create a file with the name
.htaccess
in the directory and add the lineDirectoryIndex yourFile.html index.php index.html index.htm
, whereyourFile.html
is the name of the file that should be loaded.
The URL contains a blocked file or folder name
The “chat” keyword
Live chat scripts are not allowed on InfinityFree hosting. Chat scripts work by constantly refreshing the page in the background. These background refreshes generates excessive server load, which is why we cannot host them. You are free to use live chat on your website though, but you will have to use an externally hosted chat system to handle the messages.
To enforce this, the chat
keyword is blocked on our servers. If you try to access any URL with chat
in it, you’ll get a 403 Forbidden page. For example, http://example.com/chat.php, http://example.com/livechat/index.php will all result in a 403 error.
To fix this, you can rename the file or folder to anything else (like talk
, message
, conversation
or whatever else you want).
Please do note that live chat scripts are banned completely, and being able to work around this block doesn’t mean it’s OK to host a live chat script with us.
The includes folder
For security reasons, all files in a folder includes
are blocked. This includes URLs like http://example.com/includes/function.php or http://example.com/includes/pages/product.php.
The idea behind this is that includes
means that the folder contains scripts meant to be loaded into other scripts with PHP include (or require). Scripts like that are generally not meant to be accessed directly.
The fix for this is simple: do not use the folder name includes
for anything that’s supposed to be accessed by browser. Instead, put such pages in a folder pages
, functions
, actions
or a folder with any other name.
Your site blocks access from your IP address
With .htaccess rules, it’s possible to selectively block or allow visitors based on their IP address. But using these rules, it’s also possible to lock yourself out of your site.
To do so, open a file manager or FTP connection to your site, go to the website folder and open the file .htaccess
.
If there are lines starting with deny from
or allow from
in the file, it means IP access control is configured on your site.
If you do not want to do any IP level restriction, you can simply remove all these lines from your file.
If there is a line allow from all
, you should look for any lines with deny from ....
that contain your IP address.
If there is a line deny from all
, then you should add a line with allow from ....
that contains your IP address.