目前,我们较多的服务器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. 微信APP支付后台配置

    1.申请商户号 ,申请成功后去配置证书APIv2 https://pay.weixin.qq.com/index.php/core/cert/api_cert#/    --MchKey  和MchI ...

  2. 还在拿flex进行布局吗?快来试试grid网格布局吧

    例: 遇到这种布局要求我们应该怎么办? 方法1:使用flex布局 <style> * { padding: 0; margin: 0; } .gird_Box { width: 100vw ...

  3. pgsql计算占比

    SELECT len/sum(len)over(partition by road_id) param from road_jcpd_section

  4. linux top 指令各列含义

    Linux 的 top 指令用于显示机器上正在运行的进程的信息.下面是 top 指令各列的含义: PID:进程 ID,用于标识进程. USER:进程所有者的用户名. PR:进程优先级. NI:进程的& ...

  5. HTML网址集合

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  6. 洛谷P8924题解

    洛谷 P8924 题解 题目描述 给你一个函数,画出它的函数图像(* 表示经过该点,. 表示不经过该点),大小为 \(n\times m\),其中 \(x\) 的范围是 \([0,n-1]\),\(f ...

  7. 《CSOL大灾变》Mobile开发进度记录——扔掉与拾取武器的逻辑

    在武器系统的开发过程中,涉及到武器的丢弃逻辑.由于场景是复制场景,而自己写碰撞测试和抛物线以及重力下落来模拟扔掉一把武器,并且要防止武器扔到墙里.如果自己实现这些逻辑,那么会占用渲染线程的时间开销,即 ...

  8. java中的ConcurrentModificationException是什么异常?在哪些场景下会报该异常?

    在软件构造实验Lab2的ConcreteVerticesGraph里,需要我们编写remove()方法.移除一个点没有别的方法,只有遍历集合vertices(),找到该点并移除. 当时我没有写上红框中 ...

  9. Zabbix3.4 安装配置

    第一.配置zabbix的yum源 # rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7 ...

  10. ES、Lucene、Solr的介绍和区别

    一.介绍 1.ES Elasticsearch是用Java开发并且是当前最流行的开源的企业级搜索引擎,支持多种语言 2.Lucene Lucene可以被认为是迄今为止最先进.性能最好的.功能最全的搜索 ...