JSS Server Setup
In order to deploy a JSS app to Sitecore, or to pull data from a remote Sitecore instance into a headless JSS app, you need a Sitecore instance running the Sitecore Headless Services module.
You do not need these prerequisites to perform disconnected development on a JSS site, or to quickly try out JSS. These prerequisites are to deploy to a Sitecore server for editing or server-side rendering.
To run in Integrated Mode (required for editing JSS sites), the Sitecore server must have Node installed and
node.exe on the
PATH (e.g. running
node at a command prompt should work). We recommend using the latest LTS release.
The Headless Services module requires:
- For use with Next.js - Sitecore 10.x or later and Headless Services 16.0 or later.
- For use with other supported frameworks - Sitecore 9.0 Update-1 or later.
Consult the Sitecore modules compatibility table for Sitecore XP to choose the correct versions.
Install Sitecore according to the instructions for your version available on the dev site.
Sitecore JSS License
JSS server-side functionality requires an JSS-enabled license file.
To check if your license is a JSS-enabled license, open your
license.xml in a text editor and search for
Sitecore.JSS - if it's found, you're ready to use JSS. Not there? Read on.
Recently updated partner license should already have the key that enables JSS. If you do not have the endorsement, you may need to request a fresh partner license on SPN or reach out to your Sitecore Partner Manager.
If you do not have a JSS-enabled license, please reach out to your Sitecore Account Manager and request a temp license for short term needs and discuss migration to a JSS license.
Server Components Installation
These steps only need to be performed once per Sitecore Headless server. A Headless server may host many JSS applications. In a scaled Sitecore installation, perform these steps on a Standalone or Content Management server.
Login to your Sitecore instance, and open the Desktop. On the Sitecore menu (lower left), click
Development Tools, then
Install the Headless Server Components zip package using the Installation Wizard.
For Sitecore 9.0.x only (not 9.1), alter the binding redirect for
<dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" /> <!-- change the oldVersion from 188.8.131.52 to 184.108.40.206. Leave newVersion alone (do not make it 11.0). --> <bindingRedirect oldVersion="0.0.0.0-220.127.116.11" newVersion="18.104.22.168" /> </dependentAssembly>
Verify your server components install worked, by visiting
http://your-sitecore-instance/sitecore/api/layout/render/jss?item=/&sc_apikey=TEST. You should receive HTTP Error 400.0 - API key is not valid if it is working correctly (browsers may obscure the message behind a custom error page for HTTP 400; tools like Postman or browser DevTools may be needed to see this message).
Scaled Sitecore Installations
If you are installing the Headless server components to a scaled Sitecore installation (i.e. production environments with separate CM and CD servers), additional configuration is required to complete the Headless installation for the CD (Content Delivery) servers.
Extract the server components Sitecore package with an unzip tool such as 7-Zip.
Extract the inner
package.zipthe same way. Ignore any unzip warnings about
In the resulting items, deploy all of the items in the
filesfolder to your CD server's webroot:
Add this key in
Web.configon a CD server:
Congratulations, your CD server is ready to host JSS apps.
Your Sitecore server is now all set for JSS development. Now you can deploy your app.