下面是在Linux阿里云服务器中安装Nginx命令的详细过程:
一、安装Nginx
- 更新系统软件包
使用下面的命令更新软件包:
sudo apt-get update
- 安装Nginx
输入以下命令,以安装Nginx:
sudo apt-get install nginx
输入Y,以确认安装。
- 启动Nginx
安装完成后,使用下面的命令启动Nginx:
sudo systemctl start nginx
此命令会启动Nginx服务。
- 验证Nginx是否正在运行
使用以下命令验证Nginx是否正在运行:
systemctl status nginx
如果已经运行,您会看到类似以下内容的 output:
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2019-03-31 08:50:04 UTC; 1h 15min ago
Docs: man:nginx(8)
Main PID: 20725 (nginx)
Tasks: 2 (limit: 1152)
CGroup: /system.slice/nginx.service
├─20725 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
└─20726 nginx: worker process
二、配置Nginx反向代理
Nginx可以用作反向代理服务器,将请求代理到一个或多个代理服务器上。下面是一个示例,演示如何配置Nginx反向代理。
- 创建新的Nginx server block
首先,创建一个新的Nginx server block文件。在本示例中,我们将使用 example.com
作为域名。执行以下命令,创建一个新的文件:
sudo nano /etc/nginx/sites-available/example.com
在该文件中,添加以下Nginx server block的配置:
server {
listen 80;
listen [::]:80;
server_name example.com;
location / {
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
在本示例中,我们将把请求代理到一个名为 backend
的代理服务器上。
- 激活新的server block
使用以下命令,将新的server block file 激活:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
- 验证Nginx配置
使用下面的命令验证Nginx配置是否正确:
sudo nginx -t
如果没有错误,则继续执行以下步骤。
- 重新启动Nginx服务
使用下面的命令重新启动Nginx服务:
sudo systemctl restart nginx
现在,您已经成功地配置了Nginx反向代理。
三、示例说明
示例1:将请求代理到本地服务器
如果你要将请求代理到本地服务器,请将 proxy_pass
属性的值设置为 http://127.0.0.1:8080
。
server {
listen 80;
listen [::]:80;
server_name example.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
示例2:添加SSL证书
要向Nginx添加SSL证书,请按照以下步骤操作:
- 安装 Certbot
使用以下命令,在您的服务器上安装 Certbot:
sudo apt-get update
sudo apt-get install certbot
- 获取SSL证书
使用下面的命令获取您的SSL证书:
sudo certbot certonly --standalone -d example.com -d www.example.com
Certbot 需要 DNS服务器上的TXT记录,以验证您的身份。完成验证后,Certbot将会创建一个新的目录 /etc/letsencrypt/live/example.com
,其中包括您的域名和相应的证书。
- 配置Nginx支持SSL
在上面的例子中,我们已经创建了一个 Nginx server block file. 要使Nginx支持SSL,请将以下配置添加到该文件的顶部:
server {
listen 80;
listen [::]:80;
server_name example.com www.example.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name example.com www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
location / {
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
以上就是在Linux阿里云服务器中安装Nginx命令的详细攻略,其中包括了两个示例说明。希望对您有所帮助!
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Linux阿里云服务器中安装Nginx命令的详细过程 - Python技术站