Thank, Andy. Apologies for not including the Fuseki version. I’m on 5.6.0
The full error I’m seeing is: 13:26:15 INFO Config :: Load configuration: file:////configuration/cors-config.ttl 13:26:15 ERROR Config :: No services found I’ll try upgrading to 6.1.0 or whatever is latest. Do the CORS config details in cors-config.ttl look syntactically correct? @prefix fuseki: <http://jena.apache.org/fuseki#> . <#corsConfig> a fuseki:CORSConfiguration ; fuseki:allowedOrigin "https://example.cloudfront.net" ; fuseki:allowedOrigin "http://example.elb.us-east-1.amazonaws.com" ; fuseki:allowedMethod "GET" ; fuseki:allowedMethod "POST" ; fuseki:allowedHeader "Content-Type" ; fuseki:allowedHeader "Origin" ; fuseki:allowedHeader "X-Requested-With" ; fuseki:allowedHeader "Accept" ; fuseki:maxAge 3600 . From: Andy Seaborne <[email protected]> Date: Thursday, June 4, 2026 at 11:33 AM To: [email protected] <[email protected]> Subject: Re: Fuseki CORS configuration question Hi Robert, Which version are you running? For me, > /fuseki-server --cors cors-config.ttl works for 6.1.0, whereas 5.2.0 says: "No dataset specified on the command line." Andy On 04/06/2026 13:16, Chavez, Robert wrote: > Greetings, > > I am wondering if anyone could point me to some CORS configuration examples > to configure CORS for a standalone Fuseki server run at the command line. > > I’ve searched high and low for some workable examples, but so far have not > found anything that works successfully, official documentation doesn’t have > much on the subject either. > > What I’ve managed to glean from available information so far is that I can > declare a CORS configuration file with appropriate allow rules, something > like: > > @prefix fuseki: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fjena.apache.org%2Ffuseki%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226251794%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=4EC28ugyxcOivpFw87hdnmf5%2Fgzw7cDXlrr2N3CQ1yw%3D&reserved=0<http://jena.apache.org/fuseki#>> > . > > <#corsConfig> a fuseki:CORSConfiguration ; > fuseki:allowedOrigin > "https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fexample.cloudfront.net%2F&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226279930%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=cVud6Sok96UPYqVJZmGd8ifbcJGFdMajuocZK3mYjxQ%3D&reserved=0<https://example.cloudfront.net/>" > ; > fuseki:allowedMethod "GET" ; > fuseki:allowedMethod "POST" ; > fuseki:allowedHeader "Content-Type" ; > fuseki:allowedHeader "Origin" ; > fuseki:allowedHeader "X-Requested-With" ; > fuseki:allowedHeader "Accept" ; > fuseki:maxAge 3600 . > > And then call that config file from the command line when launching Fuseki > with: > > /fuseki-server --cors cors-config.ttl > > With this approach I was assuming that the CORS configuration would apply to > any endpoint declared in the main config (see below) with > fuseki:serviceQuery. But, that does not seem to be the case. > > This results in a “No services found error" > > As a result, I am wondering if the CORS config needs to be integrated somehow > with the main config file. > > If this is the base configuration: > > PREFIX : <http://base/#> > PREFIX fuseki: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fjena.apache.org%2Ffuseki%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226303180%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=KLFCDdwbwOVzZT2rfClczvkI2ypsuKclqC5LcsoFVks%3D&reserved=0<http://jena.apache.org/fuseki#>> > PREFIX ja: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fjena.hpl.hp.com%2F2005%2F11%2FAssembler%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226326276%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=%2BxtqwRswcT79nPkD%2Fe9iUHFYer%2Besheax%2F3UvNK0I6k%3D&reserved=0<http://jena.hpl.hp.com/2005/11/Assembler#>> > PREFIX rdf: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.w3.org%2F1999%2F02%2F22-rdf-syntax-ns%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226348965%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=Iep46PZWSK2qfymwzILlj%2F%2BCpqV7mNxMhJWpUwbNyx8%3D&reserved=0<http://www.w3.org/1999/02/22-rdf-syntax-ns#>> > PREFIX rdfs: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226371875%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=GxSM9YIP9CYfLpMjYfGqN4dZiz9GMDhz2UkMfJyFlyo%3D&reserved=0<http://www.w3.org/2000/01/rdf-schema#>> > PREFIX tdb2: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fjena.apache.org%2F2016%2Ftdb%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226394516%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=5%2FQMyr4PZrYCfugoWVQWJEIg8d3R%2F%2FPP7Qi128NkRas%3D&reserved=0<http://jena.apache.org/2016/tdb#>> > PREFIX schema: > <https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fschema.org%2F&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226419246%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=KjMFzUaYd6pTmkohsOrTtPlJy3YTRDox0PCQrV0TiyU%3D&reserved=0<https://schema.org/>> > PREFIX text: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fjena.apache.org%2Ftext%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226442169%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=ZT%2BGJAqrf8iwLpDsmMA1%2FrRZFCc6GEXBtX0h22%2F3vrg%3D&reserved=0<http://jena.apache.org/text#>> > > :service_tdb_all rdf:type fuseki:Service; > rdfs:label "TDB2 chd"; > fuseki:dataset :text_dataset; > fuseki:name "chd"; > fuseki:serviceQuery "query" , "sparql" , ""; > fuseki:serviceReadGraphStore "get"; > fuseki:serviceReadWriteGraphStore > "data"; > fuseki:serviceUpdate "" , "update"; > fuseki:serviceUpload "upload” . > > I’m unsure of how to incorporate the CORS configuration intros config, this > is where some examples would be helpful. > > Perhaps something like this for the “sparql” endpoint? > > PREFIX : <http://base/#> > PREFIX fuseki: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fjena.apache.org%2Ffuseki%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226468493%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=%2BkYUEUL81dVUhuC5R36iErJcZQbq1hkQ35mgj0AdUTg%3D&reserved=0<http://jena.apache.org/fuseki#>> > PREFIX ja: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fjena.hpl.hp.com%2F2005%2F11%2FAssembler%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226497682%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=uHZE6tHECZDnX%2BK9gZb537G%2BBc3g%2BAa7psHtFbBhJ6U%3D&reserved=0<http://jena.hpl.hp.com/2005/11/Assembler#>> > PREFIX rdf: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.w3.org%2F1999%2F02%2F22-rdf-syntax-ns%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226527363%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=T1wdipvOvg%2FdysgA3BkIyWu%2B9q6UwRNaDkjcMBs46ZY%3D&reserved=0<http://www.w3.org/1999/02/22-rdf-syntax-ns#>> > PREFIX rdfs: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226558729%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=OpQ%2FWIvveN45GTjJ0po%2Fch4a%2FUOuecZl2t45m%2BeXvG4%3D&reserved=0<http://www.w3.org/2000/01/rdf-schema#>> > PREFIX tdb2: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fjena.apache.org%2F2016%2Ftdb%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226591080%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=ikexljncMUAt7Pg1A6hHogLFgbeDUZv4Gn045rqcVZ0%3D&reserved=0<http://jena.apache.org/2016/tdb#>> > PREFIX schema: > <https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fschema.org%2F&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226620560%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=%2BvUwpfRB23ovxHNWurW79kfoIdh%2BrHaecuPsqVVb7n0%3D&reserved=0<https://schema.org/>> > PREFIX text: > <https://nam12.safelinks.protection.outlook.com/?url=http%3A%2F%2Fjena.apache.org%2Ftext%23&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226648656%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=aGkBZ6IAr2Zz0r5Mwou1dPdbS2TvpY9r3f5DauJ12kE%3D&reserved=0<http://jena.apache.org/text#>> > > :service_tdb_all rdf:type fuseki:Service; > rdfs:label "TDB2 chd"; > fuseki:dataset :text_dataset; > fuseki:name "chd”; > fuseki:serviceQuery "query" , "sparql" , "”; > > ## SPARQL query services e.g. http://host:port/chd/sparql?query= > > fuseki:endpoint [ > > fuseki:operation fuseki:query ; > fuseki:name "sparql"; > fuseki:CORSConfiguration [ > fuseki:allowOrigin > "https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fexample.cloudfront.net%2F&data=05%7C02%7Cr.chavez%40northeastern.edu%7C0f119315b205425565fd08dec24ea612%7Ca8eec281aaa34daeac9b9a398b9215e7%7C0%7C0%7C639161840226678810%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=O7S493HolBt5MVFShkDghAgyks6cnUDIhWlk6uNqa8s%3D&reserved=0<https://example.cloudfront.net/>" > ; > fuseki:allowMethods "GET, POST," ; > fuseki:allowHeaders "Content-Type, > Authorization” ; > fuseki:allowedHeader "Origin" ; > fuseki:allowedHeader "X-Requested-With" ; > fuseki:allowedHeader "Accept" ; > fuseki:maxAge 3600 . > ] > ] ; > > > fuseki:serviceReadGraphStore "get"; > fuseki:serviceReadWriteGraphStore > "data"; > fuseki:serviceUpdate "" , "update"; > fuseki:serviceUpload "upload” . > > The above is just a guess, so any guidance would be greatly appreciated. > > Thank you, > Robert
