Как получить форму сообщения в приложении Nodejs для работы на cpanel - PullRequest
0 голосов
/ 16 апреля 2020

пожалуйста, у меня есть приложение Node.js / Express с формой в файле html. Форма отлично работает на моем локальном компьютере, когда я ее запускаю. Эта форма . html находится в папке publi c, ниже приведены атрибуты формы, которые также имеют кнопку отправки ниже;

<form action="/api/students" method="post" class="was-validated shadow font-weight-bold" >...

У меня также есть бэкэнд API в индексе . js, который находится в том же каталоге, что и папка publi c, как показано ниже,

...
// Serving static folder
app.use(express.static(path.join(__dirname, 'public'))); 

// Students API Routes
app.use('/api/students', require('./routes/students'));

// Connect to DB
mongoose.connect( 
    process.env.DB_CONNECTION, 
    {  useNewUrlParser: true ,
       useUnifiedTopology: true, 
    },
    () => console.log('Connected to DB')
);


const PORT = process.env.PORT || 2100;
app.listen(PORT, () => console.log(`Server started on port ${PORT}`));

Я пытался развернуть его на платформе общего хостинга cpanel, которая работала как-то Но сообщение формы не может быть отправлено и выдает ошибку времени ожидания запроса. Я попытался изменить значение действия формы, как показано ниже, но оно не работает.

<form action="my_domain_name.com/api/students" method="post" class="was-validated shadow font-weight-bold" >...

<form action="my_domain_name.com:2100/api/students" method="post" class="was-validated shadow font-weight-bold" >...

Пожалуйста, кто-нибудь может помочь мне решить эту проблему. Заранее спасибо.

1 Ответ

0 голосов
/ 16 апреля 2020

Похоже, что API Node.js Express недоступен.

Как вы размещаете приложение Node на cpanel? Похоже, вы только что загрузили все файлы stati c html на хост, но не запускаете приложение узла - поэтому причина истечения срока ожидания запроса.

...