PREREQUISITES: You must have Node.js version 18 or higher installed.
NOTE: To install Sitefinity CMS using NuGet, you must use Visual Studio 2017 or later. This article uses Visual Studio 2019 as a reference.
To install Sitefinity CMS in a blank web application using a NuGet package, perform the following:
To do this, perform the following:
In Visual Studio, perform the following:
Progress.Sitefinity.Headless
NOTE: With these commands, you install the latest patch build. If you want to install a specific version, you must use the command followed by -Version and the version number.
-Version
For example, enter Install-Package Progress.Sitefinity.Headless -Version 14.4.8100.0
If your project is hosted on a local IIS, you need to make some specific settings, so that your Sitefinity CMS can communicate with the Renderer application:
Progress.Sitefinity.Cloud.AppGatewayHostRewriteModule
NOTE: IIS's NETWORK SERVICE must have permissions to access the folder. The file must remain in this folder for as long as the extension is used. Deleting the file or its folder can cause issues.
Next, you have to configure the access to the default web service endpoint in Sitefinity CMS:
To create your Next.js application, perform the following:
To develop your website, you need access to the WYSIWYG editor and to the backend at the same time - to drop your widgets and configure them. The development mode enables this by using the HTTP-proxy-middleware package to proxy any Sitefinity CMS related requests to Sitefinity CMS and allows the Next.js renderer to handle only the frontend rendering of the pages. Running in development mode does not require installing additional software and works on any Node.js supported OS. Perform the following:
HTTP-proxy-middleware
.env.development
PROXY_URL
SF_ACCESS_KEY
npm run dev.
NOTE: The sample project runs under SSL by default and installs a default SSL certificate. To remove it, change the command configuration in the package.json file.
package.json
To have seamless experience when using the standalone renderer application together with Sitefinity CMS, the renderer is also working as a proxy and forwards every request it cannot handle to Sitefinity CMS. This way, the user does not have to switch between the two applications. This is done through the SF_CMS_URL environment variable. Setting this variable allows proxying any requests unhandled by the Next.js renderer to the CMS.
SF_CMS_URL
You host the renderer at your public domain and your users use only this domain, without considering whether the renderer or Sitefinity CMS handles their request.
NOTE: The proxy logic facilitates the migration of Sitefinity CMS pages that are created with ASP.NET MVC to the new Next.js pages, created with the renderer application. Environment variables legend:
SF_CMS_URL'
'SF_LOCAL_VALIDATION_KEY'
'NEXT_PUBLIC_SF_CMS_URL'
'SF_PROXY_ORIGINAL_HOST'
'SF_HOST_HEADER_NAME'
'SF_WHITELISTED_PATHS'
'SF_IS_HOME_PAGE_LEGACY'
'false'
Increase your Sitefinity skills by signing up for our free trainings. Get Sitefinity-certified at Progress Education Community to boost your credentials.
This free lesson teaches administrators, marketers, and other business professionals how to use the Integration hub service to create automated workflows between Sitefinity and other business systems.
This free lesson teaches administrators the basics about protecting yor Sitefinity instance and its sites from external threats. Configure HTTPS, SSL, allow lists for trusted sites, and cookie security, among others.
The free on-demand video course teaches developers how to use Sitefinity .NET Core and leverage its decoupled architecture and new way of coding against the platform.
To submit feedback, please update your cookie settings and allow the usage of Functional cookies.
Your feedback about this content is important