Nginx 服务器搭建教程
Nginx 是一款轻量级的 Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,以其占有内存少、并发能力强的特点被广泛使用,本文将详细介绍如何在 Ubuntu 系统中安装和配置 Nginx 服务器,并实现一个简单的个人网站。
环境准备
在开始之前,请确保你已经安装了以下软件:
1、Nginx:用于处理 HTTP 请求。
2、文本编辑器:Notepad++、Sublime Text 或 Atom,用于编辑配置文件。
3、基本的 Linux 操作知识:以便能够在命令行中完成一些必要的操作。
安装 Nginx
在 Ubuntu 系统中,你可以通过以下命令来安装 Nginx:
sudo apt update sudo apt install nginx
安装完成后,你可以通过以下命令来检查 Nginx 是否成功安装:
nginx -v
如果安装成功,你应该会看到 Nginx 的版本信息。
配置 Nginx
Nginx 的配置文件位于/etc/nginx/nginx.conf
,你可以使用任何文本编辑器来编辑这个文件,在本教程中,我们将使用 nano 编辑器:
sudo nano /etc/nginx/nginx.conf
在文件中,找到http
块,并添加以下内容来配置我们的个人网站:
http { server { listen 80; server_name your_domain.com; root /var/www/your_domain.com; index index.html; } }
listen 80:指定了监听的端口号为 80;
server_name:你需要将your_domain.com
替换为你自己的域名或 IP 地址;
root:指定了网站的根目录,你需要将其替换为你自己的网站目录;
index:指定了默认的索引文件,这里我们将它设置为index.html
。
完成以上配置后,使用以下命令保存并退出编辑器:
Ctrl + X Y Enter
使用以下命令测试你的 Nginx 配置文件是否正确:
sudo nginx -t
如果你的配置文件没有错误,你应该会看到以下输出:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
使用以下命令重启 Nginx 以使新的配置生效:
sudo systemctl restart nginx
编写网站文件
在上一步中,我们指定了网站的根目录为/var/www/your_domain.com
,我们需要在该目录下创建一个名为index.html
的文件,你可以创建一个包含以下内容的 HTML 文件:
<!DOCTYPE html> <html> <head> <title>My Personal Website</title> </head> <body> <h1>Welcome to My Personal Website</h1> <p>Here you can learn more about me and my work.</p> </body> </html>
保存并退出文件后,使用以下命令来检查你的网站文件是否被正确地放置在网站根目录下:
ls /var/www/your_domain.com
如果你的网站文件正确放置,你应该会看到index.html
文件的信息。
访问您的网站
你已经完成了所有的配置和编写工作,可以使用浏览器来访问你的网站了,在你的浏览器中输入你的域名或 IP 地址,你应该能够看到你编写的网站内容。
高级设置
1. 使用 HTTPS 加密
对于涉及用户隐私的网站,使用 HTTPS 加密是非常重要的,以下是启用 HTTPS 的步骤:
1、安装 Certbot:你可以使用以下命令在 Ubuntu 上安装 Certbot:
sudo apt install python3-certbot-nginx
2、获取 SSL 证书:使用以下命令获取 SSL 证书:
sudo certbot --nginx -d your_domain.com
Certbot 将通过 Nginx 配置自动检测你的域名,并为你生成 SSL 证书,完成后,你可以在/etc/letsencrypt/live/your_domain.com/
目录下找到证书文件。
3、配置 Nginx 启用 HTTPS:在/etc/nginx/sites-available/your_domain.com
文件中添加以下两行内容:
listen 443 ssl; ssl_certificate /etc/letsencrypt/live/your_domain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/your_domain.com/privkey.pem;
4、重启 Nginx:使用以下命令重启 Nginx 以使新的配置生效:
sudo systemctl restart nginx
2. 防止 DDoS 攻击
为了防止 DDoS 攻击,你可以限制请求速率和连接速率,以下是具体步骤:
1、限制请求速率:在/etc/nginx/nginx.conf
文件中的http
块中添加以下内容:
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
2、应用到特定位置:在server
块中的特定位置应用请求速率限制:
location / { limit_req zone=one burst=5 nodelay; }
3、限制连接速率:在/etc/nginx/nginx.conf
文件中的http
块中添加以下内容:
limit_conn_zone $binary_remote_addr zone=addr:10m;
4、应用到特定位置:在server
块中的特定位置应用连接速率限制:
location / { limit_conn addr 10; }
5、重启 Nginx:使用以下命令重启 Nginx 以使新的配置生效:
sudo systemctl restart nginx
3. 配置虚拟主机
为了在同一台服务器上运行多个网站,你需要配置虚拟主机,以下是具体步骤:
1、创建新的服务器块:在/etc/nginx/sites-available/
目录下创建一个新的服务器块文件,例如my_new_site
:
sudo nano /etc/nginx/sites-available/my_new_site
2、配置服务器块:在新文件中添加以下内容:
server { listen 80; server_name new_site.com; root /var/www/new_site.com; index index.html; }
3、启用新的服务器块:创建一个符号链接到sites-enabled
目录:
sudo ln -s /etc/nginx/sites-available/my_new_site /etc/nginx/sites-enabled/
4、重启 Nginx:使用以下命令重启 Nginx 以使新的配置生效:
sudo systemctl restart nginx
常见问题与解答
Q1:如何卸载 Nginx?A:要卸载 Nginx,你可以使用以下命令:停止 Nginx 服务:执行命令sudo systemctl stop nginx
停止 Nginx 服务,如果需要完全卸载 Nginx,包括其配置文件和数据,请执行以下命令:删除 Nginx 安装目录及其内容,这通常位于/usr/share/nginx
,删除 Nginx 配置文件目录及其内容,这通常位于/etc/nginx
,注意:执行这些命令将删除 Nginx 及其所有相关文件和数据,请谨慎操作,并确保在继续之前备份重要数据,如果你想在未来重新安装 Nginx,建议保留其配置文件和数据,如果你只想卸载 Nginx 软件包但保留其配置文件和数据,可以使用以下命令:这将只删除 Nginx 软件包,但保留其配置文件和数据,这种方法不会删除 Nginx 的服务文件或系统目录中的其他文件。
到此,以上就是小编对于“nginx怎么做服务器”的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位朋友在评论区讨论,给我留言。
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/615051.html