Preface
I have been working on the deployment project with the operation and maintenance GG for the past two days.
One problem we encountered was a problem with our dev, uat, and product environments.
Because the front-end and back-end are separated, there will be the problem of switching the domain name of the back-end interface during the development and deployment process. After struggling all afternoon and searching various information, I figured out this Nodeenvironment variableprocess.env.
The following is a record of problem solving. Hope this helps someone who doesn't understand.
Node environment variables
First of all, when we are developing single-page applications of react and vue, I believe everyone is familiar with the configuration files. process.env is not unfamiliar.
Can not remember? Black question mark.jpg.
These are the following things.

Literally, it is this env attribute, in development and production The configuration will be slightly different in different environments.
Okay, let's start to see what this so-called process is.
文档:http://nodejs.cn/api/process....官方解释:process 对象是 一个 global (全局变量),提供有关信息,控制当前 Node.js 进程。作为一个对象,它对于 Node.js 应用程序始终是可用的,故无需使用 require()。
process (process) is actually a global variable that exists in nodejs.
Then, we can get some interesting things through this so-called process.
But today we mainly talk about process.env.
process.env
What is this?
Official:
process.envThe property returns a user Environmental information object.Document: http://nodejs.cn/api/process....
Oh oh oh, it turns out that there is a property that can return the environment where the project is running some information.
What’s the use?
It's an obvious usage scenario, relying on this we can put a label on the server. In this case, we can do some configuration processing according to different environments. For example, turning on sourceMap, switching the domain name of the backend interface, etc.
你是 dev 环境 他是 uat 环境 她是 product 环境。
How to configure environment variables
The following describes how to configure environment variables for each environment.
Windows configuration
Temporary configuration
You can configure it directly in the cmd environment, view environment variables, add environment variables, and delete environment variables.
#node中常用的到的环境变量是NODE_ENV,首先查看是否存在 set NODE_ENV #如果不存在则添加环境变量 set NODE_ENV=production #环境变量追加值 set 变量名=%变量名%;变量内容 set path=%path%;C:\web;C:\Tools #某些时候需要删除环境变量 set NODE_ENV=
Permanent configuration
Right click (this computer) -> Properties (R) -> Advanced system settings -> Environment variables (N)...
Linux configuration
Temporary
View environment variables, add environment variables, delete environment variables
#node中常用的到的环境变量是NODE_ENV,首先查看是否存在 echo $NODE_ENV #如果不存在则添加环境变量 export NODE_ENV=production #环境变量追加值 export path=$path:/home/download:/usr/local/ #某些时候需要删除环境变量 unset NODE_ENV #某些时候需要显示所有的环境变量 env
Permanent
Open the configuration file location
# 所有用户都生效 vim /etc/profile # 当前用户生效 vim ~/.bash_profile
Add a statement similar to the following at the end of the file to set or modify environment variables
# 在文件末尾添加如下格式的环境变量 export path=$path:/home/download:/usr/local/ export NODE_ENV = product
After the final modification is completed, you need to run the following statement to reload the system
# 修改/etc/profile文件后 source /etc/profile # 修改~/.bash_profile文件后 source ~/.bash_profile
Solve the problem of back-end interface change caused by the environment
After figuring out this problem, we can set different NODE_ENV on machines in different environments. Of course, this field is not necessarily certain.
You can also change it to other NODE_ENV_NIZUISHUAI etc. It is customized anyway.
Solution steps
1. Modify the backend address configuration in the code
It’s very simple, just use process.env.NODE_ENVThis field is used to judge. (process is a global attribute of node, just use it directly)

##2. Set the environment variable
export NODE_ENV=devon linux and then you can happily start the project. At the endBecause my current project is React server-side rendering. Therefore, the backend request forwarding is not handed over to
nginx for processing. Like ordinary pure single-page applications,
nginx is generally used to forward requests.
![]()
The above is the detailed content of Questions about Node environment variable process.env. For more information, please follow other related articles on the PHP Chinese website!
Python vs. JavaScript: The Learning Curve and Ease of UseApr 16, 2025 am 12:12 AMPython is more suitable for beginners, with a smooth learning curve and concise syntax; JavaScript is suitable for front-end development, with a steep learning curve and flexible syntax. 1. Python syntax is intuitive and suitable for data science and back-end development. 2. JavaScript is flexible and widely used in front-end and server-side programming.
Python vs. JavaScript: Community, Libraries, and ResourcesApr 15, 2025 am 12:16 AMPython and JavaScript have their own advantages and disadvantages in terms of community, libraries and resources. 1) The Python community is friendly and suitable for beginners, but the front-end development resources are not as rich as JavaScript. 2) Python is powerful in data science and machine learning libraries, while JavaScript is better in front-end development libraries and frameworks. 3) Both have rich learning resources, but Python is suitable for starting with official documents, while JavaScript is better with MDNWebDocs. The choice should be based on project needs and personal interests.
From C/C to JavaScript: How It All WorksApr 14, 2025 am 12:05 AMThe shift from C/C to JavaScript requires adapting to dynamic typing, garbage collection and asynchronous programming. 1) C/C is a statically typed language that requires manual memory management, while JavaScript is dynamically typed and garbage collection is automatically processed. 2) C/C needs to be compiled into machine code, while JavaScript is an interpreted language. 3) JavaScript introduces concepts such as closures, prototype chains and Promise, which enhances flexibility and asynchronous programming capabilities.
JavaScript Engines: Comparing ImplementationsApr 13, 2025 am 12:05 AMDifferent JavaScript engines have different effects when parsing and executing JavaScript code, because the implementation principles and optimization strategies of each engine differ. 1. Lexical analysis: convert source code into lexical unit. 2. Grammar analysis: Generate an abstract syntax tree. 3. Optimization and compilation: Generate machine code through the JIT compiler. 4. Execute: Run the machine code. V8 engine optimizes through instant compilation and hidden class, SpiderMonkey uses a type inference system, resulting in different performance performance on the same code.
Beyond the Browser: JavaScript in the Real WorldApr 12, 2025 am 12:06 AMJavaScript's applications in the real world include server-side programming, mobile application development and Internet of Things control: 1. Server-side programming is realized through Node.js, suitable for high concurrent request processing. 2. Mobile application development is carried out through ReactNative and supports cross-platform deployment. 3. Used for IoT device control through Johnny-Five library, suitable for hardware interaction.
Building a Multi-Tenant SaaS Application with Next.js (Backend Integration)Apr 11, 2025 am 08:23 AMI built a functional multi-tenant SaaS application (an EdTech app) with your everyday tech tool and you can do the same. First, what’s a multi-tenant SaaS application? Multi-tenant SaaS applications let you serve multiple customers from a sing
How to Build a Multi-Tenant SaaS Application with Next.js (Frontend Integration)Apr 11, 2025 am 08:22 AMThis article demonstrates frontend integration with a backend secured by Permit, building a functional EdTech SaaS application using Next.js. The frontend fetches user permissions to control UI visibility and ensures API requests adhere to role-base
JavaScript: Exploring the Versatility of a Web LanguageApr 11, 2025 am 12:01 AMJavaScript is the core language of modern web development and is widely used for its diversity and flexibility. 1) Front-end development: build dynamic web pages and single-page applications through DOM operations and modern frameworks (such as React, Vue.js, Angular). 2) Server-side development: Node.js uses a non-blocking I/O model to handle high concurrency and real-time applications. 3) Mobile and desktop application development: cross-platform development is realized through ReactNative and Electron to improve development efficiency.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

SublimeText3 Linux new version
SublimeText3 Linux latest version

Dreamweaver CS6
Visual web development tools

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.







