如何在Debian 10上设置Nginx服务器
admin
2023-08-01 18:32:14
0

服务器块是Nginx指令,用于定义特定域的设置,从而使您可以在一台服务器上运行多个网站。对于每个网站,您都可以设置站点文档根目录(包含网站文件的目录),创建单独的安全策略,使用不同的SSL证书等等。

先决条件

确保满足以下先决条件:

  • 指向您的公共服务器IP的域名。
  • 在您的Debian系统上安装了Nginx。
  • 您以root用户或具有sudo特权的用户身份登录。

在某些文档中,该术语Server Blocks称为Virtual host。假虚拟主机是Apache术语。

创建目录结构

文档根目录是用于存储域名网站文件并响应请求提供服务的目录。文档根目录可以是服务器上的任何目录。

本文中的示例使用以下目录结构:

/var/www/
├── domain1.com
│   └── public_html
├── domain2.com
│   └── public_html
├── domain3.com
│   └── public_html

 

基本上,我们将为要托管在服务器上的每个域创建一个单独的/var/www目录。在每个目录中,我们将创建一个public_html目录,该目录将存储域网站文件。

运行以下命令以创建域的根目录example.com:

sudo mkdir -p /var/www/example.com/public_html

接下来,index.html在域的文档根目录中创建一个文件:

sudo nano /var/www/example.com/public_html/index.html

打开文件并粘贴以下行:

/var/www/example.com/public_html/index.html



  
    
    Welcome to example.com
  
  
    

Success! example.com home page!

 

为避免权限问题,将域文档根目录的所有权更改为Nginx用户(www-data):

sudo chown -R www-data: /var/www/example.com

创建一个服务器块

默认情况下,在Debian系统上,Nginx服务器块配置文件存储在/etc/nginx/sites-available目录中。要激活配置,您需要将文件符号链接到/etc/nginx/sites-enabled/目录。

打开您的文本编辑器并创建以下服务器阻止文件:

sudo nano /etc/nginx/sites-available/example.com.conf

/etc/nginx/sites-available/example.com.conf

server {
    listen 80;
    listen [::]:80;

    root /var/www/example.com/public_html;

    index index.html;

    server_name example.com www.example.com;

     access_log /var/log/nginx/example.com.access.log;
     error_log /var/log/nginx/example.com.error.log;

    location / {
        try_files $uri $uri/ =404;
    }
}

 

可以将配置文件命名为任意名称,但是通常最好使用域名。

通过创建从文件到sites-enabled目录的符号链接来启用新的服务器阻止文件:

sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/

测试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

要验证服务器块是否按预期工作,请http://example.com在浏览器中打开,您将看到以下内容:

get-50get-50

 

相关内容

热门资讯

Windows 11 和 10... Windows 11/10 文件夹属性中缺少共享选项卡 – 已修复 1.检查共享选项卡是否可用 右键...
事件 ID 7034:如何通过... 点击进入:ChatGPT工具插件导航大全 服务控制管理器 (SCM) 负责管理系统上运行的服务的活动...
Radmin VPN Wind... Radmin VPN 是一款免费且用户友好的软件,旨在牢固地连接计算机以创建一个有凝聚力的虚拟专用网...
Hive OS LOLMine... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...
如何修复 Steam 内容文件... Steam 内容文件锁定是当您的 Steam 文件无法自行更新时出现的错误。解决此问题的最有效方法之...
Hive OS 部署 PXE ... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...
如何在电报Telegram中隐... 点击进入:ChatGPT工具插件导航大全 在Android上的电报中隐藏您的电话号码 您可以通过切换...
在 iCloud 上关闭“查找... 如果您是 Apple 的长期用户,您肯定会遇到过 Find My 应用程序,它本机安装在 iPhon...
farols1.1.501.0... faro ls 1.1.501.0(64bit)可以卸载,是一款无需连接外部PC机或笔记本计算机即可...
如何在Instagram上扫描... 如何在Instagram上扫描名称标签/ QR? 总而言之,您可以通过大约四种不同的方法来扫描这些I...