In front-end development, Node.js has become a very important role. It not only helps us manage dependencies, but also helps us build a convenient and easy-to-use server for debugging when developing locally. But when putting the front-end project into the production environment, we need to deploy the Node.js server to ensure that our project can run smoothly on the server.
This article will explain how to use Node.js to deploy front-end projects to the server. It mainly includes the following steps:
Before deployment, we need to confirm whether the Node.js environment has been installed on the server. If it is not installed, you can follow the following steps to install it:
sudo apt install nodejs
node -v
If the Node.js version number appears, it means it has been installed successfully.
To deploy a front-end project, you need to confirm whether all the libraries or plug-ins the project depends on have been installed. You can view all dependencies by running the following command in your local development environment:
npm list
This command will list all libraries and their dependencies in the node_modules
folder. If the dependencies change, you need to update them with the following command:
npm install
After the server environment and front-end project dependencies are confirmed, we A script needs to be written to start the server. The following is a simple Node.js server script code example:
const express = require('express') const app = express() app.use(express.static('public')) app.listen(3000, () => { console.log('App listening on port 3000!') })
This example code uses the Express framework to convert static files (such as HTML, CSS and JavaScript) in the public
folder exposed on the server. Visit localhost:3000
in the browser to view the static files.
If your front-end application is a single page application (SPA), you may need to have all routes point to index.html
instead of trying to load the HTML file corresponding to the route. Here is a code example for configuring a route map via Node.js:
app.get('*', function(req, res) { res.sendFile(path.join(__dirname, 'public/index.html')) })
The above code snippet will configure the same response for all requests, i.e. look for index in the directory
public. html
and return it as the response.
The best way to deploy the code to the server is to use Git. The following are sample steps:
sudo apt-get install git
mkdir project_name && cd project_name
git clone git@github.com:<your_username>/<your_repository_name>.git ./
npm install
cp /path/to/server.js ./
After completing the above steps, you can use Node.js to run the application on the server. However, if the server crashes or the application behaves abnormally, you may need to manually restart the server and application. Therefore, we need to use a process manager, and PM2 is a good choice.
First you need to install PM2 on the server:
sudo npm install pm2 -g
Next, we use the PM2 command to run the server in the background:
pm2 start server.js --name=<app_name>
whereapp_name
is you Give the project a name. You can view the list of applications running by PM2 using the following command:
pm2 list
Close the application using the following command:
pm2 stop <app_name>
Restart the application using the following command:
pm2 restart <app_name>
In this article, We explained how to use Node.js to deploy front-end projects to the server. Armed with this knowledge, you should be able to smoothly deploy your front-end project into a production environment and manage the process through PM2.
The above is the detailed content of Nodejs deploys front-end projects on the server. For more information, please follow other related articles on the PHP Chinese website!