【发布时间】:2021-12-05 02:20:23
【问题描述】:
我尝试从 cpanel 安装 NPM 包。但是当我尝试打开网站时,我收到了来自应用程序的响应不完整的响应。当我离线运行它时,它可以正常工作,但是当我将它移动到 cpanel 时,它给了我不完整的响应错误
var express = require("express"),
app = express(),
mongoose = require("mongoose"),
flash = require("connect-flash"),
passport = require("passport"),
LocalStrategy = require("passport-local"),
session = require("express-session"),
methodOverride = require("method-override"),
nodemailer = require("nodemailer"),
multer = require("multer"),
dotenv = require("dotenv").config(),
Product = require("./models/products"),
User = require("./models/user");
var mongoDB = process.env.MONGODB_URL;
mongoose.connect(mongoDB, { useNewUrlParser: true , useUnifiedTopology: true});
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'MongoDB connection error:'));
var indexRoutes = require("./routes/index"),
storeRoutes = require("./routes/products");
app.use(express.urlencoded({extended: true}));
app.use(express.json());
app.set("view engine", "ejs");
app.use(express.static(__dirname + "/public"));
app.use(methodOverride("_method"));
app.use(flash());
//User Passport Config
app.use(require("express-session")({
secret: process.env.SECRET,
resave: false,
saveUninitialized: false
}));
app.use(passport.initialize());
app.use(passport.session());
passport.use(new LocalStrategy(User.authenticate()));
passport.serializeUser(User.serializeUser());
passport.deserializeUser(User.deserializeUser());
app.use(function(req, res, next){
res.locals.currentUser = req.user;
res.locals.error = req.flash("error");
res.locals.success = req.flash("success");
next();
});
app.use(indexRoutes);
app.use("/store", storeRoutes);
app.use(function(req, res){
res.send ("Error finding page")
})
const port = process.env.PORT;
app.listen (port, function(){
console.log ("Server Active");
});
这是我在.htaccess 文件中看到的。我只在.env 文件中放置了一些密码和其他私人信息
# php -- BEGIN cPanel-generated handler, do not edit
# Set the “ea-php70” package as the default “PHP” programming language.
<IfModule mime_module>
AddHandler application/x-httpd-ea-php70 .php .php7 .phtml
</IfModule>
# php -- END cPanel-generated handler, do not edit
# DO NOT REMOVE. CLOUDLINUX PASSENGER CONFIGURATION BEGIN
PassengerAppRoot "/home/zenitcou/zenitcouture"
PassengerBaseURI "/"
PassengerNodejs "/home/zenitcou/nodevenv/zenitcouture/11/bin/node"
PassengerAppType node
PassengerStartupFile app.js
# DO NOT REMOVE. CLOUDLINUX PASSENGER CONFIGURATION END
# DO NOT REMOVE OR MODIFY. CLOUDLINUX ENV VARS CONFIGURATION BEGIN
<IfModule Litespeed>
</IfModule>
# DO NOT REMOVE OR MODIFY. CLOUDLINUX ENV VARS CONFIGURATION END
【问题讨论】:
-
它可能与配置文件(例如.htaccess)而不是实际的node.js脚本本身有关。
-
那我该如何解决呢?
-
您需要共享
.htaccess文件或(开发人员/系统管理员/教程?)告诉您的其他配置文件。因为你在 Cpanel 上,很可能 apache 代理搞砸了。 -
我已经用
.htaccess更新了这个问题。 @willnode
标签: javascript html node.js cpanel