<p>You can try installing the <a href="https://github.com/nystudio107/retour" rel="nofollow noreferrer">Retour plugin</a> to get a log of all of the 404 errors and their referrers, and potentially handle them via redirects.</p>

CC BY-SA 3.0
2017-12-06T01:57:14.380Z
2017-12-06T01:57:14.380Z
andrew.welch
<p>A 404 is just someone/something requesting a resources (path, image, JS file, CSS file, etc.) that your web server and Craft cannot resolve on your site.</p>

<p>If this is on a publicly facing website, there's about a 99.99% chance it's just some script/bot probing different URLs for various endpoints to execute known exploits.  It's extremely common on any public facing website.</p>

<p>If you look in your actual <code>craft/storage/runtime/logs</code> files instead of the log viewer in the Control Panel, you'll see the same 404's being logged along with the <code>REQUEST_URI</code>.  That will show the non-existent path/resource that was requested.</p>

CC BY-SA 3.0
2017-11-30T13:35:01.507Z
Thanks, Brad. Looking through the logs in 'craft/storage/runtime/logs' was a helpful recommendation and - you're right - the site is getting hit by a ton of bots (it was previously hosted by WordPress but I moved it over to Craft) and then I think a lot of podcast apps are hitting a non-existant .xml file (client uses FeedBurner now but used to host their podcast XML locally).
portnoy-the-elder
CC BY-SA 3.0
2017-11-29T19:19:20.020Z
2017-11-29T19:19:20.020Z
Brad Bell
<p>The Error is thrown here </p>

<pre><code>public function actionRender($template, array $variables = array())
{
    // Does that template exist?
    if (craft()-&gt;templates-&gt;doesTemplateExist($template))
    {
        $this-&gt;renderTemplate($template, $variables);
    }
    else
    {
        throw new HttpException(404);
    }
}
</code></pre>

<p>Maybe you are trying to render a template that does not exist? 
Are you not in dev mode and don't have a homepage template so it tries to redirect again and again? Or maybe the same issue with an error template? Do you have a <code>{% redirect %}</code> in your templates?</p>

<p>Edit: or maybe you deleted some files? You could output the $template variable in the controller in order to see which template causes the error</p>

CC BY-SA 3.0
2017-11-29T16:27:48.523Z
2017-11-29T16:27:48.523Z
Robin Schambach
<p>My log is getting hammered nonstop by the same error about every second (see image). Any idea what's going on here?</p>

<p>Text is:</p>

<pre><code>Level       error
Category    exception.Craft\HttpException.404
Message     Craft\HttpException in /home/folder/public_html/craft/app/controllers/TemplatesController.php:72
</code></pre>

<p><a href="https://i.sstatic.net/w4fRl.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/w4fRl.png" alt="Image here"></a></p>

<error-message><logs>
Constant exception.Craft\HttpException.404 in logs
# Constant exception.Craft\HttpException.404 in logs

(Asked by: username_0 on 2017-11-29)

My log is getting hammered nonstop by the same error about every second (see image). Any idea what's going on here?
Text is:
Level       error
Category    exception.Craft\HttpException.404
Message     Craft\HttpException in /home/folder/public_html/craft/app/controllers/TemplatesController.php:72

**Tags:** error-message, logs

---

## 3 answers

### Answer by username_1 on 2017-12-06. Score: 2

You can try installing the [Retour plugin](https://github.com/nystudio107/retour) to get a log of all of the 404 errors and their referrers, and potentially handle them via redirects.


---

### Answer by username_2 on 2017-11-29. Score: 0

A 404 is just someone/something requesting a resources (path, image, JS file, CSS file, etc.) that your web server and Craft cannot resolve on your site.

If this is on a publicly facing website, there's about a 99.99% chance it's just some script/bot probing different URLs for various endpoints to execute known exploits. It's extremely common on any public facing website.

If you look in your actual `craft/storage/runtime/logs` files instead of the log viewer in the Control Panel, you'll see the same 404's being logged along with the `REQUEST_URI`. That will show the non-existent path/resource that was requested.

> **Comments:**
> **username_0**: Thanks, Brad. Looking through the logs in 'craft/storage/runtime/logs' was a helpful recommendation and - you're right - the site is getting hit by a ton of bots (it was previously hosted by WordPress but I moved it over to Craft) and then I think a lot of podcast apps are hitting a non-existant .xml file (client uses FeedBurner now but used to host their podcast XML locally).  

---

### Answer by username_3 on 2017-11-29. Score: 0

The Error is thrown here 
public function actionRender($template, array $variables = array())
{
    // Does that template exist?
    if (craft()->templates->doesTemplateExist($template))
    {
        $this->renderTemplate($template, $variables);
    }
    else
    {
        throw new HttpException(404);
    }
}

Maybe you are trying to render a template that does not exist? 
Are you not in dev mode and don't have a homepage template so it tries to redirect again and again? Or maybe the same issue with an error template? Do you have a {% redirect %} in your templates?
Edit: or maybe you deleted some files? You could output the $template variable in the controller in order to see which template causes the error


---

