I am installing suitecrm 8. I have installed successfully. But while opening webpage it show error in console. Below is the error.
https://a486e6606699.ngrok.io/SuiteCRM800/public/api/graphql 404 (Not Found)
506-es2015.87684172a7ad05f6600b.js:266 ERROR Error: undefined
at new t (477-es2015.78a85e6ecad91f13fce6.js:350)
at 477-es2015.78a85e6ecad91f13fce6.js:350
at 477-es2015.78a85e6ecad91f13fce6.js:350
at new P (polyfills-es2015.8c96a3d504d415ad14cc.js:48)
at Object.error (477-es2015.78a85e6ecad91f13fce6.js:350)
at g (477-es2015.78a85e6ecad91f13fce6.js:350)
at b (477-es2015.78a85e6ecad91f13fce6.js:350)
at e.value (477-es2015.78a85e6ecad91f13fce6.js:350)
at 477-es2015.78a85e6ecad91f13fce6.js:350
at Array.forEach ()
It is suggested that getting a 404 for GraphQL is a mod_rewrite error. What if you “double check” by testing https://<your_host>/index.php/api/graphql and it still shows a 404?
I know it’s old, but seems the question may be out there… Plus I had same problem while back, got stumped, and now finally figured it out. In my case, I found that the vhost (I am using Apache2) config was not configured for ssl. I added this code to my .conf file for ssl and it all worked after that:
<Directory /<path-to-suite>/public>
AllowOverride All
Order Allow,Deny
Allow from All
</Directory>
From what I know, there is usually a .conf file for non-ssl (port 80 typically) and for ssl (usually port 443).
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/crm/public
<Directory /var/www/html/crm/public>
AllowOverride All
Order Allow,Deny
Allow from All
</Directory>
yes, the api directory is inside the public directory and there is a graphql folder inside that.
Yes, mod_rewrite is enabled.
Yes, all of my folders are owned by www-data.
I am on Apache/2.4.58 (Ubuntu)
PHP 8.3.6 (cli) (built: Mar 19 2025 10:08:38) (NTS)
So, what am I missing that I am getting this error.
The user and group name (in the above example www-data ) needs to be replaced by the actual system user and group that your webserver runs under. This varies depending on your operating system. Common web server users are as follows:
Nothing changed for me. I looked at the compatibility matrix and I am with in standards on my server. I was assuming that when I put www-data. That it would be understood that I enter www-data:www-data as the owner of the directory and all the files.
What is the logic behind the api/graphql ? Why is the folder empty? What is supposed to be in the folder?
For anyone else that finds this thread. here is what fixed the issue I was having.
I caused my own issue by moving the api/graphql folder into the public folder. That made the .htaccess check true. That stopped the .htaccess from working.