Not connect to InvoiceNinja Chrome Extension

Hi,

I have install the LXC template of InvoiceNinja on my proxmox server using the Turnkey template version 18.0-1 (Proxmox Template list). All works good but the Chome Extension do not connect. On console show error 403, and on apache2 error logs shows:

[Fri Mar 07 13:26:54.047345 2025] [evasive20:error] [pid 564] [client CLIENT_IP] client denied by server configuration: /var/www/invoiceninja/public/api

On the path /var/www/invoiceninja/public/api doesn’t exist any folder with name “api”, so for this reason not connect to extension. How I can fix this issue? Is any action that I can do, I do not change somethning, I use this template with the initial recommended configuration.

Thank you!

Hi,

Is it possible you have a firewall blocking the request?

Also, have you mapped the web root to /var/www/invoiceninja/public

I believe the ‘api’ part is coming from the API web route which is /api/v1/…

On apache2 conf I have leave all default:

ServerName localhost

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/invoiceninja/public/
</VirtualHost>

<VirtualHost *:443>
        SSLEngine on
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/invoiceninja/public/
</VirtualHost>

<Directory /var/www/invoiceninja/public/>
        AllowOverride All
        Require all granted
</Directory>

On proxmox firewall is off, and on turnkey template has pre-installed the Webmin with fail2ban and linux firewall iptables. I try to stop fail2ban and check but nothing change.
Here is the default iptables conf of webmin: Screenshot by Lightshot

But on the public path does not have any folder api, this is strange?

Sorry, I’m not sure. I assume it’s due to a configuration issue.

There won’t be a folder for ‘api’, it’s a virtual web route define by Laravel. You can see all of the web and api routes here:

How I can change this SSL cert? Screenshot by Lightshot
Maybe this is the problem for the chrome extension.

Now I have connected to extension but I have a message “Loading, please wait…”.

Any ideas? I have error 500 and not loading the initial page of plugin.

Do you see any details about the 500 error in storage/logs?

I moved to a docker environment finally, because the turnkey versions maybe was out of date with integration of chrome extension. Now all works fine.

1 Like