# Tracking Pixel Returning 404 Error on Nginx

**URL:** <https://forum.mautic.org/t/tracking-pixel-returning-404-error-on-nginx/29441>\
**Category:** Product Support\
**Created:** [September 27, 2023, 8:17am UTC](https://forum.mautic.org/t/tracking-pixel-returning-404-error-on-nginx/29441 "2023-09-27T08:17:03Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![zylan](https://avatars.discourse-cdn.com/v4/letter/z/41988e/32.png) [@zylan](https://forum.mautic.org/u/zylan)\
**Post date:** [September 27, 2023, 8:17am UTC](https://forum.mautic.org/t/tracking-pixel-returning-404-error-on-nginx/29441/1 "2023-09-27T08:17:03Z")

</div>

After several attempts installing Mautic on a VPS with Aapanel and Nginx, and assembling my own configuration file since the ones found online were not working, I got everything functioning except for the tracking pixel. I believe there is an issue with my redirection configuration or something similar.

Request to: [https://my.domain.com/email/pixel.gif](https://my.domain.com/email/pixel.gif) Results in: 404 Not Found nginx

While: [https://my.domain.com/index.php/email/pixel.gif](https://my.domain.com/index.php/email/pixel.gif) Works perfectly.

I have already tried the following location blocks:

location ~ email/(.\*).gif { try\_files $uri /index.php?$args; }

location ~ mtc.js { try\_files $uri /index.php?$args; }

location ~ mtracking.gif { try\_files $uri /index.php?$args; }

location ~ ^/email/.+.gif$ { try\_files /www/wwwroot/my.domain.com$uri /index.php?$args; access\_log /var/log/nginx/pixel.log;  
}

Note: I’m going to add my Nginx configuration in another post, so it looks better

Technical details:

- 4.5GB KVM VPS
- Cron jobs enabled
- PHP 7.4
- Panel: Aapanel
- Nginx
- No relevant error logs on the server related to this.

I would greatly appreciate any help in resolving this tracking pixel issue.

---

<div class="post-metadata">

**Author:** ![zylan](https://avatars.discourse-cdn.com/v4/letter/z/41988e/32.png) [@zylan](https://forum.mautic.org/u/zylan)\
**Post date:** [September 27, 2023, 8:20am UTC](https://forum.mautic.org/t/tracking-pixel-returning-404-error-on-nginx/29441/2 "2023-09-27T08:20:15Z")

</div>

Here is my website’s Nginx configuration file:

```auto
server
{
    listen 80;
        listen 443 ssl http2;
    server_name my.domain.com;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/my.domain.com;

    #SSL-START SSL related configuration, do NOT delete or modify the next line of commented-out 404 rules
    #error_page 404/404.html;
    ssl_certificate /www/server/panel/vhost/cert/my.domain.com/fullchain.pem;
    ssl_certificate_key /www/server/panel/vhost/cert/my.domain.com/privkey.pem;
    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    add_header Strict-Transport-Security "max-age=31536000";
    error_page 497 https://$host$request_uri;
        #SSL-END

    #ERROR-PAGE-START Error page configuration, allowed to be commented, deleted or modified
    #error_page 404 /404.html;
    #error_page 502 /502.html;
    #ERROR-PAGE-END

    #PHP-INFO-START PHP reference configuration, allowed to be commented, deleted or modified
    
    include enable-php-74.conf;
    
    location ~ ^/index\.php {
    
      fastcgi_split_path_info ^(/index\.php)(/.+)$;
    
      fastcgi_pass unix:/run/php/php7.4-fpm.sock;
    
      fastcgi_index index.php;
    
      include fastcgi_params;
    
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    
      fastcgi_buffer_size 128k;
      fastcgi_buffers 256 16k; 
      fastcgi_busy_buffers_size 256k;
      fastcgi_temp_file_write_size 256k;
    
    } 
    
    location ~ \.php$ {
    fastcgi_pass unix:/run/php/php7.4-fpm.sock;
    }

    #PHP-INFO-END

    #REWRITE-START URL rewrite rule reference, any modification will invalidate the rewrite rules set by the panel
    include /www/server/panel/vhost/rewrite/my.domain.com.conf;
    #REWRITE-END

    # Forbidden files or directories
    location ~ ^/(\.user.ini|\.htaccess|\.git|\.env|\.svn|\.project|LICENSE|README.md)
    {
        return 404;
    }

    # Directory verification related settings for one-click application for SSL certificate
    location ~ \.well-known{
        allow all;
    }

    #Prohibit putting sensitive files in certificate verification directory
    if ( $uri ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {
        return 403;
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires 30d;
        error_log /dev/null;
        access_log off;
    }

    location ~ .*\.(js|css)?$
    {
        expires 12h;
        error_log /dev/null;
        access_log off; 
    }
    access_log /www/wwwlogs/my.domain.com.log;
    error_log /www/wwwlogs/my.domain.com.error.log;
    
        location / {
      try_files $uri $uri/ /index.php?$args;
    }
    
    location ~ ^/s/dashboard$ {
      rewrite /s/dashboard /index.php last; 
    }

     # Solve email tracking pixel not found
    location ~ mtc.js{
        try_files $uri /index.php?$args;
    }
    location ~ mtracking.gif{
          try_files $uri /index.php?$args;
    }
        
    # Solve JS Loading 404 Error
    location ~ (.*).js {
        try_files $uri /index.php?$args;
    }
    
    #Bloquear accesso a archivos sensibles
    location ~ /\.ht {
    deny all; 
    }
    
    #Habilitar gzip compression
    gzip on; 
    gzip_types text/plain text/css text/xml application/json;
    
    
    location ~* \.(jpg|jpeg|png|ico|pdf)$ {
                expires 15d;
    }

    # Don't log favicon
    location = /favicon.ico {
        log_not_found off;
        access_log off;
    }
    
}

```

---

<div class="post-metadata">

**Author:** ![mzagmajster](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/mzagmajster/32/687_2.png) [@mzagmajster](https://forum.mautic.org/u/mzagmajster)\
**Post date:** [September 27, 2023, 8:48am UTC](https://forum.mautic.org/t/tracking-pixel-returning-404-error-on-nginx/29441/3 "2023-09-27T08:48:36Z")

</div>

Hi,

```auto
 location ~ focus/(.*).gif {
        try_files $uri /index.php?$args;
    }

    location ~ email/(.*).gif {
        try_files $uri /index.php?$args;
    }

```

Try these two.

Regards, M.

---

<div class="post-metadata">

**Author:** ![zylan](https://avatars.discourse-cdn.com/v4/letter/z/41988e/32.png) [@zylan](https://forum.mautic.org/u/zylan)\
**Post date:** [September 27, 2023, 8:00pm UTC](https://forum.mautic.org/t/tracking-pixel-returning-404-error-on-nginx/29441/4 "2023-09-27T20:00:12Z")

</div>

> [@mzagmajster](#):
>
> ```auto
> location ~ focus/(.*).gif {
> try_files $uri /index.php?$args;
> }
> 
> location ~ email/(.*).gif {
> try_files $uri /index.php?$args;
> }
> 
> ```

It worked perfectly, although not directly in the config file but in a special section that Aapanel has for URL rewriter, a complete guide on what the config file for Aapanel with Nignix should be like is definitely missing, since it has a very different structure

Thanks very much buddy

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex020/uploads/mautic/original/1X/43c63600fe51440378769136903f1fa2a9a34102.png) [@system](https://forum.mautic.org/u/system)\
**Post date:** [September 29, 2023, 8:01am UTC](https://forum.mautic.org/t/tracking-pixel-returning-404-error-on-nginx/29441/5 "2023-09-29T08:01:08Z")

</div>

This topic was automatically closed 36 hours after the last reply. New replies are no longer allowed.
