set node express server using ssl

const https = require("https"),
  fs = require("fs");

const options = {
  key: fs.readFileSync("/srv/www/keys/my-site-key.pem"),
  cert: fs.readFileSync("/srv/www/keys/chain.pem")
};

const app = express();

app.use((req, res) => {
  res.writeHead(200);
  res.end("hello world\n");
});

app.listen(8000);

https.createServer(options, app).listen(8080);

4.25
4
Phearce 100 points

                                    // create certificate g-ssl.config.js

var { writeFileSync } = require('fs');
var { resolve } = require('path')
var selfsigned = require('selfsigned');
var chalk = require('chalk');

var gssl = selfsigned.generate([{ name: 'commonName', value: 'localhost' }], {
	keySize: 2048,
	algorithm: 'sha256',
	days: 90,
	clientCertificateCN: 'localhost'
});

writeFileSync(resolve(process.cwd(), 'ssl/key.pem'), `${gssl.private}`, 'utf8');
writeFileSync(resolve(process.cwd(), 'ssl/cert.pem'), `${gssl.cert}`, 'utf8');

console.log(chalk.green.bold('Generate Certificate SSL Succeffuly'));

// app.js

require('dotenv').config();
const https = require("https");
const http = require('http');
const express = require('express');
const { resolve } = require('path')
const { readFileSync } = require("fs");
const logger = require('morgan');
const chalk = require('chalk');
const app = express();

app.use(logger('dev'));
app.set('views', 'views');
app.set('view engine', 'ejs');
app.set('x-powered-by', false);

app.get('/', (req, res) => {
	 res.render('index', {
	 	 desc: req.protocol === 'https'
	 	 ? `Express using SSL certificate for using ${req.protocol} protocol`
	 	 : `Express using SSL certificate for using ${req.protocol} protocol`
	 })
});

http.createServer(app).listen(process.env.PORT, () => console.log(chalk.white.bold('http server on port 3000')));

if(process.env.NODE_ENV === 'development') {
	const options = {
	  key: readFileSync(`${resolve(process.cwd(), 'ssl/key.pem')}`),
	  cert: readFileSync(`${resolve(process.cwd(), 'ssl/cert.pem')}`),
	};
	https.createServer(options, app).listen(3001, () => console.log(chalk.white.bold('https server on port 3001')));
}

console.log(chalk.white.bold(`NOTE: important this SSL for Development Mode not for Production Mode`));
console.log(chalk.white.bold(`NOTE: because this ssl certificate's signature was created manually`));
console.log(chalk.white.bold(`NOTE: SSL certificate is used to use authentication using Oauth or package like Passport for auth third part \n`));

4.25 (4 Votes)
0
Are there any code examples left?
Create a Free Account
Unlock the power of data and AI by diving into Python, ChatGPT, SQL, Power BI, and beyond.
Sign up
Develop soft skills on BrainApps
Complete the IQ Test
Relative searches
setup ssl with express express routes ssl express secure ssl express dev ssl node with express js add ssl localhost for windows node with express js add ssl localhost using express with ssl ssl nodejs express free configure ssl certificate in node express backend create ssl server node js express enable ssl on localhost express server how to express.js use https ssl express ssl server express.js how to server https ssl certificate express js enable ssl localhost ssl for express how to implement ssl certificate to nodejs express app how to implement ssl certificate to nodejs express a[[ set node express server using ssl nodejs express specify ssl certificate node js express ssl node js express ssl add ssl certificate to express ssl for express server express add ssl certificate how to get ssl certificate for express app node express ssl certificate node.js express ssl express with options ssl ssl in express js express js with ssl nodejs express ssl node express ssl ssl express js how to setup express with ssl node express with ssl configure ssl in node js express express server ssl express ssl certs configure ssl for express ssms express ssl express express ssl https express ssl pinning how to use ssl with expressjs ssl on expressjs app add ssl to express ssl with exprress nodejs express enable ssl express router express server with ssl ssl on express install certificate express node js express openssl how to get ssl on express server express js ssl Set up SSL in nodejs and express using openSSL ssl with certs nodejs express expressjs ssl certificate express configure ssl how to openssl express express use pem use ssl with node js express add ssl certificate to node js how to use certificate with express.js express public ssl express use ssl free https for express use ssl certificate in express.js express add certificate express ssl nodejs express with ssl express read https certificate from pem file express ssl certificate node js express with ssl expressjs ssl app.listen with cert file options in nodejs node js openssl tutorial nodejs express ssl certificate web certificate express node app express certificate express server ssl certificate https nodejs express .key file set up ssl node expreess install ssl nodejs express express server with ssl key cert express server with ssl key ssl with expressjs ssl nodejs express how to make ssl express server express insert ssl certificate ssl certificate node express express js certificate ssl express node ssl nodejs ssl certificate express expressjs https mykey myreq pem node js express ssl certificate express https certificate nodejs express https certificate expressjs certificate ssl express node js express ssl
Made with love
This website uses cookies to make IQCode work for you. By using this site, you agree to our cookie policy

Welcome Back!

Sign up to unlock all of IQCode features:
  • Test your skills and track progress
  • Engage in comprehensive interactive courses
  • Commit to daily skill-enhancing challenges
  • Solve practical, real-world issues
  • Share your insights and learnings
Create an account
Sign in
Recover lost password
Or log in with

Create a Free Account

Sign up to unlock all of IQCode features:
  • Test your skills and track progress
  • Engage in comprehensive interactive courses
  • Commit to daily skill-enhancing challenges
  • Solve practical, real-world issues
  • Share your insights and learnings
Create an account
Sign up
Or sign up with
By signing up, you agree to the Terms and Conditions and Privacy Policy. You also agree to receive product-related marketing emails from IQCode, which you can unsubscribe from at any time.
Creating a new code example
Code snippet title
Source