Contypes Installation Guide

1. Site

1.1. Install on Windows - IIS

This distro is tested on Windows 10 with IIS web server. It consists of 2 parts - API and Client. The API is a self-contained application, which does not require '.NET Core' preinstalled. (Version 2.0 runs on .NET Core v7). The CLient is an Angular application with server side rendering, which runs on a Nodejs server (Version 2.0 runs on Nodejs v18).

Environment:

App settings:

Sites:

1.2. Install on Linux Centos - Apache

This distro is tested on Linux Centos 8 with Apache web server. It consists of 2 parts - API and Client. The API is a self-contained application, which does not require '.NET Core' preinstalled. (Version 2.0 runs on .NET Core v7). The CLient is an Angular application with server side rendering, which runs on a Nodejs server (Version 2.0 runs on Nodejs v18).

Environment:

App settings:

Sites:

(Apache is a reverse proxy server for the Kestrel server, serving the dotnet API, and a reverse proxy server for the Nodejs server, serving the Angular SSR client)

[Unit]
Description=Some App

[Service]
WorkingDirectory=/var/www/site/html
ExecStart=/var/www/site/html/SomeApp
Restart=on-failure
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=SomeApp
Environment=ASPNETCORE_ENVIRONMENT=Production 

[Install]
WantedBy=multi-user.target
<VirtualHost *:*>
    RequestHeader set "X-Forwarded-Proto" expr=%{REQUEST_SCHEME}
</VirtualHost>

<VirtualHost *:443>
    ProxyPreserveHost On
    ProxyPass / http://127.0.0.1:5010/ 		
    ProxyPassReverse / http://127.0.0.1:5010/ 

    ServerName site.contypes.com

    #error log
    #...
    #requests log
    #...

    SSLEngine on
    Include /etc/letsencrypt/options-ssl-apache.conf
    SSLCertificateFile /etc/letsencrypt/live/site.contypes.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/site.contypes.com/privkey.pem
</VirtualHost>

2. Database

The base versions of the CMS use SQLite in the backend.

You do not need to do anything to prepare the database. It's embedded in the API app and it's precreated.

3. Super User

The sites comes with preinstalled username/password = admin/admin. Upon first login you would go to menu item Administration > Users and change the username and the password of the admin user. More admin users can be added and deleted, but the initial admin cannot be deleted.

4. Settings

4.1. App Identifier

Open the appsettings.json file in a text editor and replace the value 'my_site' with an application name of your choice in the field App > AppTitle. The AppTitle value will appear as a general title on all pages, the browser tabs, and the automatic email messages.

Update Links fields.

4.2. Emailing

4.2.1. Incoming Email Box

Open the appsettings.json file in a text editor and add an email address in the field App > AppEmail. This is the email box which will receive all visitor messages.

4.2.2. Outgoing Email service

Get ready with an email server (local hoster or external). Open the appsettings.json file in a text editor and add entries for the section Mailing > User Account:

The site will use those settings and credentials to send emails to users, including for password recovery.

4.3 Authentication Keys

Open the appsettings.json file in a text editor and focus on the Authentication section:

4.4. Current Limitations

The initial single stand-alone app version implies fillowing hardcoded limitations (will be made customizable in a future release):

5. Privacy Protection

You, as a site owner, must ensure site compliace with the privacy data protection regulations like the EU General Data Protection Regulation (GDPR), the California Consumer Privacy Act (CCPA) and all others, depending on the area of operation of your site.

You have to specify the privacy policy by editing the HTML page "Privacy Policy" or by providing a new document at your discretion.

Adjust the request and error logging scopes of your web server (Apache, IIS, other) to be compliant with the privacy protection policy of your site.


-------- the end --------

Last compiled on 2021-10-12
For Contypes CMS v2.0