簡體   English   中英

我可以在我的網站中包含這個 JavaScript/NodeJS/express 應用程序嗎?

[英]Can I include this JavaScript/NodeJS/express app in my website?

我遵循了有關如何使用 NodeJS、express、MongoDB 作為數據庫和 EJS 的網站注冊和登錄 function 的教程。 我包含了一個簡單的 HTML 文件,我希望在其中有一個指向注冊頁面的 href。 我包含的 JavaScript 在端口:5000 或此:(process.env.PORT)變量上運行服務器。 基本上我的問題是如何在我的網站上包含此注冊和登錄功能。

順便說一句,包含的 HTML 文件不是我的實際網站,而只是一個簡單的示例,我包含的 JavaScript 並不是注冊/登錄應用程序的全部內容。

 <,DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width. initial-scale=1.0"> <title>Document</title> </head> <body> click on register below to go to the register page<br> <a href="">register</a> </body> </html>

 const express = require('express'); const expressLayouts = require('express-ejs-layouts'); const mongoose = require('mongoose'); const flash = require('connect-flash'); const session = require('express-session'); const passport = require('passport'); const http = require('http'); const app = express(); // Passport config require('./config/passport')(passport); // DB Config const db = require('./config/keys').MongoURI; // Connect to Mongo mongoose.connect(db, { useNewUrlParser: true}).then(() => console.log('MongoDB Connected...')).catch(err => console.log(err)); // EJS app.use(expressLayouts); app.set('view engine', 'ejs'); // Bodyparser app.use(express.urlencoded({ extended: false})); // Express Session app.use(session({ secret: 'secret', resave: true, saveUninitialized: true, })); // Passport middleware app.use(passport.initialize()); app.use(passport.session()); // Connect Flash app.use(flash()); // Global variables app.use((req, res, next) => { res.locals.success_msg = req.flash('succes_msg'); res.locals.error_msg = req.flash('error_msg'); res.locals.error = req.flash('error'); next(); }); // Routes app.use('/', require('./routes/index')); app.use('/users', require('./routes/users')); const PORT = process.env.PORT || 5000; app.listen(PORT, () => console.log(`Service started on port ${PORT}`));

Node 是一種服務器端技術,因此您不能將其包含在例如腳本文件中。 托管服務器端應用程序的一個選項是Heroku

此外,使用情況在一定程度上取決於它是無頭 API 還是傳統的 web 應用程序。

為了將 nodejs 應用程序部署到運行 PHP 的現有 web 服務器,一個好方法是您可以創建一個子域並在服務器上托管 nodejs 應用程序,然后將登錄和注冊功能重定向到該子域。

https://www.namecheap.com/support/knowledgebase/article.aspx/10202/48/how-to-install-nodejs-on-a-vps-or-a-dedicated-server

上面的鏈接有一個很好的教程,介紹了如何將 nodejs 服務器托管到現有的 cpanel 網站。

我在 heroku 上托管了應用程序(現在是我的整個網站),因為 netlify(我之前使用的網站的主機)不支持 nodeJS。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM