安装 Nginx
在 Ubuntu 系统上安装 Nginx 非常简单,只需要使用 apt 包管理器。首先确保你的系统已经更新到最新状态,然后运行以下命令来安装 Nginx。
sudo apt update
sudo apt install nginx
安装完成后,你可以通过访问服务器的公网 IP 地址来验证 Nginx 是否安装成功。如果看到 Nginx 的默认欢迎页面,说明安装已经完成。
配置 Nginx
Nginx 的配置文件位于 /etc/nginx 目录下。默认的配置文件是 nginx.conf,你可以使用任何文本编辑器来修改它。例如,你可以使用 vim 来编辑:
sudo vim /etc/nginx/nginx.conf
在配置文件中,你可以设置全局参数,例如 worker 进程数、事件模型等。更常见的是修改位于 /etc/nginx/sites-available 目录下的站点配置文件。如果你还没有创建自定义的配置文件,可以复制一份默认的配置文件。
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/your-site.conf
配置站点
在自定义的配置文件中,你需要设置 server 块来定义你的站点。以下是一个简单的示例配置:
server {
listen 80;
server_name your-domain.com;
root /var/www/your-site;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
在这个配置中,我们设置了监听的端口(80),服务器的域名,网站的根目录,以及一个简单的location块来处理请求。保存并关闭文件后,你需要创建一个符号链接到 sites-enabled 目录来启用这个站点。
sudo ln -s /etc/nginx/sites-available/your-site.conf /etc/nginx/sites-enabled/
为了确保配置没有错误,你可以使用 Nginx 的测试命令:
sudo nginx -t
使用 systemctl 管理 Nginx
Systemd 是 Ubuntu 默认的初始化系统和服务管理器,它可以用来管理 Nginx 服务。你可以使用以下命令来启动 Nginx 服务:
sudo systemctl start nginx
要确保 Nginx 在系统启动时自动启动,可以使用以下命令:
sudo systemctl enable nginx
如果你需要重启 Nginx 服务,可以使用:
sudo systemctl restart nginx
要检查 Nginx 服务的状态,可以使用:
sudo systemctl status nginx
常见问题解答
问:如何在 Nginx 配置中设置 301 重定向?
答:你可以在 Nginx 配置文件的 location 块中添加一个 rewrite 指令来实现 301 重定向。例如:
location /old-url {
return 301 /new-url;
}
问:如何为 Nginx 配置 SSL 证书?
答:首先需要获取 SSL 证书,然后将其放置在 Nginx 可以访问的位置。在配置文件中,你需要设置 ssl_certificate 和 ssl_certificate_key 指令:
server {
listen 443 ssl;
server_name your-domain.com;
ssl_certificate /etc/nginx/ssl/your-domain.crt;
ssl_certificate_key /etc/nginx/ssl/your-domain.key;
# 其他配置...
}
问:如何设置 Nginx 代理请求?
答:你可以使用 location 块来设置 Nginx 作为代理服务器。例如:
location /api {
proxy_pass http://backend-server;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}