目前,我们较多的服务器WEB环境都是用的Nginx引擎,我们采用服务器的目的是可以获取到更多的资源,而且建站数量是不受限制的。我们可以根据自己需要配置Nginx,可以自定义特定域的设置,允许您在单个服务器上运行多个网站。 对于每个网站,我们可以设置站点文档根目录(包含网站文件的目录)、创建单独的安全策略、使用不同的 SSL 证书等等。

在这篇文章中,我们在Debian10环境中配置Nginx引擎模块。

第一、满足基本要求

找配置之前,我们需要服务器确保已满足以下先决条件: 1、指向我们服务器 IP 的域名 2、我们的服务器采用的是Debian镜像,这里我们用的是Debian10

第二、创建目录结构 文档根目录是存储域名网站文件并响应请求提供服务的目录。 文档根目录可以是服务器上的任何目录。 本文中的示例使用以下目录结构:

/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

添加点内容:

<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>Welcome to example.com</title>
</head>
<body>
<h1>Success! example.com home page!</h1>
</body>
</html>

授权:

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

编辑:

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;
}
}

配置文件可以任意命名,我们可以使用自己的域名名创建的,容易识别。 通过创建从文件到启用站点的目录的符号链接来启用新的服务器块文件:

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

检查:

sudo nginx -t

如果出现下面内容表示正常:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
sudo systemctl restart nginx

重启Nginx生效。 这样,我们就可以完整的添加当前一个站点。类似,如果我们需要添加其他站点也是如此,只是绑定的域名目录不同。不过,如果我们有用脚本一键包,或者是WEB面板的话,就没有必要这样手工设置。

参考:https://www.cnbanwagong.com/debian-set-nginx.html

如何在Debian10镜像中设置Nginx引擎模块的更多相关文章

  1. 为何在font-family属性中设置多个值

    通常前端开发中会对body标签中设置font-family属性多个值,例如: body{padding:0;margin:0;font-size:12px;text-align:left;font-f ...

  2. 转--Android如何在java代码中设置margin

    ========  3 在Java代码里设置button的margin(外边距)? 1.获取按钮的LayoutParams LinearLayout.LayoutParams layoutParams ...

  3. CentOS7.X中设置nginx和php-fpm的开机自启动

    一.设置nginx的开机自启动方法 1.在/etc/init.d/目录下创建nginx文件 vi /etc/init.d/nginx 编写内容如下: #!/bin/sh # # nginx - thi ...

  4. Ubuntu中使用Nginx+rtmp模块搭建流媒体视频点播服务

    1. 背景 不知不觉笔者来到流媒体部门已经一年半多了,积攒了不少的流媒体知识,但平时工作也比较忙,很少进行总结性的梳理,最近准备花几个周末时间写一个流媒体系列的实践文章,也算是给自己做总结的同时帮助有 ...

  5. 如何在Webstorm/Phpstorm中设置连接FTP,并快速进行文件比较,上传下载,同步等操作

    Phpstorm除了能直接打开localhost文件之外,还可以连接FTP,除了完成正常的数据传递任务之外,还可以进行本地文件与服务端文件的异同比较,同一文件自动匹配目录上传,下载,这些功能是平常ID ...

  6. Android如何在java代码中设置margin

    习惯了直接在xml里设置margin(距离上下左右都是10dip),如: <ImageView android:layout_margin="10dip" android:s ...

  7. 如何在Quartus II中设置Virtual pin

    为了验证FPGA工程中的某个模块的功能和时序的正确性,常常需要对其单独进行验证,但是这些模块通常都与内部的众多信号相连(如系统总线,中断信号线等),往往一个模块的对外接口引脚会多达几百个,对其单独仿真 ...

  8. 如何在Windows系统中设置Python程序定时运行

    文章出处:http://blog.csdn.net/wwy11/article/details/51100432 首先,我们肯定是要用到Windows下的[计划任务]功能 之后点击右侧的[创建基本任务 ...

  9. <转>如何在iOS 7中设置barTintColor实现类似网易和 Facebook 的 navigationBar 效果

    转自:i‘m Allen的博客 先给代码:https://github.com/allenhsu/CRNavigationController 1. 问题的表现 相信很多人在 iOS 7 的适配过程中 ...

  10. centos7中设置nginx的systemctl启动方式

    1.建立服务文件 (1)文件路径 vim /usr/lib/systemd/system/nginx.service (2)服务文件内容 [Unit] Description=nginx - high ...

随机推荐

  1. video.js 注销上一个对象并重新初始化

    .dispose()没有用,不知道为什么. 后来我们为video绑定不同的id,还是随机数,每次初始化都用新video的id.并不建议这样做,但是我们也没有更好的办法了.

  2. Python实现XX短视频加密算法抓包分析及刷邀请

    Python实现XX短视频加密算法抓包分析及刷邀请 出自:https://zhuanlan.zhihu.com/p/466929667?utm_id=0 Python彳余 一个会常常更新互联网,编程的 ...

  3. 云原生数据库TDSQL-C 容灾的实践和探索

    云原生数据库TDSQL-C作为腾讯云架构平台部核心数据库产品之一,致力于为云上ToB用户和公司自研业务提供集高性能.低成本.大存储.低延迟.秒级扩缩容.极速回档.Serverless化七大特性于一体的 ...

  4. StreamReader和StreamWriter

    FileStream 是操作字节的 StreamReader跟StreamWriter是操作字符串的 操作文件的方法的命名空间都是IO using System; using System.Colle ...

  5. CSS主要整理

    css主要整理 // 右侧悬浮导航 /* 侧栏开始 */ #home { position: relative } // 悬浮 #home .xf { width: 67.6923076923077p ...

  6. 【23期】请你谈谈关于IO同步、异步、阻塞、非阻塞的区别

    同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别? 这个问题其实不同的人给 ...

  7. (jmeter笔记)有序递增和无序递增

    有序递增:计数器 Track counter independently for each user: 不勾选,每个线程引用,顺延递增 勾选 ,每个线程引用,重新计算 Reset counter on ...

  8. CH582m串口透传程序

    目录 参考了沁恒官网22年1月更新的CH583EVT包中的UART1例程 功能:上位机通过串口1发送指令规定串口2和3的波特率,实现串口2和3之间的数据透传 担心串口3的接收中断会被串口2的发送中断打 ...

  9. DP4056软硬兼容TP4056,低成本

    概述 DP4056是一款单节锂离子电池恒流/恒压线性充电器,采用底 部带散热片的SOP8封装以及简单的外部应用电路,常适 合便携式设备应用,适合USB电源和适配器电源工作,内部采用防倒充电路,不需要外 ...

  10. k8s部署-kubeadm

    环境配置 内核配置 基本组件安装 高可用组件安装 kubeadm集群初始化