介绍
Nginx 是 Apache2 的流行 HTTP 服务器替代品。 它可以用作反向代理、邮件服务器或 Web 服务器。 根据截至 2015 年 7 月的 Netcraft 调查 ,Nginx 目前拥有 14% o 的市场份额,并且自 2007 年以来一直呈上升趋势。
在本指南中,我们将在您的 Debian 8 服务器上安装 Nginx。
先决条件
要遵循本教程,您将需要:
- 一个新鲜的 Debian 8.1 Droplet
- 一个sudo非root用户,可以按照本教程的步骤2和3进行设置
除非另有说明,否则本教程中的所有命令都应以具有 sudo 权限的非 root 用户身份运行。
第 1 步 — 安装 Nginx
在这一步中,我们将使用一个名为 apt-get
的内置 软件包安装程序。 它极大地简化了管理并促进了干净的安装。
作为先决条件的一部分,您应该使用 apt-get
更新了 apt 包索引并安装了 sudo
包。 与其他 Linux 发行版不同,Debian 8 没有安装 sudo
。
Nginx 是前面提到的 HTTP 服务器,专注于处理低内存使用的大负载。 要安装它,请运行以下命令:
sudo apt-get install nginx
有关 Nginx 和 Apache2 这两种最流行的开源 Web 服务器之间的差异的信息,请参阅 这篇文章 。
第 2 步 — 测试您的 Web 服务器
在这一步中,我们将测试您的 Nginx 服务器是否可访问。
在 Web 浏览器中,访问 http://your_server_ip
,将 your_server_ip
替换为您的服务器的 IP 地址。 您应该会看到默认的 Nginx 页面,确认服务器已启动并正在运行。
如果您无法访问 Web 浏览器,您仍然可以从命令行测试您的服务器。 最好从不同的系统对其进行测试,以确保您的网站对外界可见。 发出命令:
curl your_server_ip
您应该看到以下 HTML 输出。
输出
<!DOCTYPE html> <html> <head> <title>Welcome to nginx on Debian!</title> <style> body { width: 35em; margin: 0 auto; font-family: Tahoma, Verdana, Arial, sans-serif; } </style> </head> <body> <h1>Welcome to nginx on Debian!</h1> <p>If you see this page, the nginx web server is successfully installed and working on Debian. Further configuration is required.</p> <p>For online documentation and support please refer to <a href="http://nginx.org/">nginx.org</a></p> <p> Please use the <tt>reportbug</tt> tool to report bugs in the nginx package with Debian. However, check <a href="http://bugs.debian.org/cgi-bin/pkgreport.cgi?ordering=normal;archive=0;src=nginx;repeatmerged=0">existing bug reports</a> before reporting a new bug. </p> <p><em>Thank you for using debian and nginx.</em></p> </body> </html>
错误将如下所示。 你应该 而不是 看到这个。
输出
curl: (52) Empty reply from server
第 3 步 — 管理 Nginx 进程
现在您的 Web 服务器已启动并运行,我们可以了解一些基本的管理命令。
要停止您的 Web 服务器,您可以键入:
sudo systemctl stop nginx
要在 Web 服务器停止时启动它,请键入:
sudo systemctl start nginx
要停止然后再次启动服务,请键入:
sudo systemctl restart nginx
如果您只是进行配置更改,Nginx 通常可以重新加载而不会断开连接。 为此,可以使用以下命令:
sudo systemctl reload nginx
我们可以通过键入以下内容确保我们的 Web 服务器在服务器重新启动时自动重新启动:
sudo systemctl enable nginx
要测试此配置是否有效,请重新启动服务器。
sudo shutdown -r now
然后注销,因为服务器现在正在重新启动。
一两分钟后,您可以重复步骤 2 以测试您的 Web 服务器是否在重新启动时启动。
服务器根目录和配置
如果您想通过 Nginx 开始为您自己的页面或应用程序提供服务,您需要知道 Nginx 配置文件和默认服务器根目录的位置。
默认服务器根目录
默认服务器根目录为/var/www/html
。 放置在此目录中的文件将在您的 Web 服务器上提供。 此位置在 Nginx 附带的默认服务器块配置文件中指定,该文件位于 /etc/nginx/sites-enabled/default
。
服务器块配置
任何额外的服务器块,在 Apache 中称为虚拟主机,都可以通过在 /etc/nginx/sites-available
中创建新的配置文件来添加。 要激活这些配置,请使用以下命令创建指向 /etc/nginx/sites-enabled
的符号链接:
sudo ln -s /etc/nginx/sites-available/site /etc/nginx/sites-enabled/site
sites-enabled
目录下的所有配置文件都会被Nginx加载。
Nginx 全局配置
主要的 Nginx 配置文件位于 /etc/nginx/nginx.conf
。 您可以在此处更改设置,例如运行 Nginx 守护进程的用户,以及在 Nginx 运行时生成的工作进程的数量等。
结论
现在您已经安装了 Web 服务器,对于要提供的内容类型和用于创建更丰富体验的技术,您有很多选择。
您可能还想探索其他选项来保护您的服务器。 请记住,它现在对万维网开放,并且极易受到攻击。