unit4.web服务的部署及高级优化方案

搭建web服务器要求如下:
1.web服务器的主机ip:172.25.254.100

[root@server101 桌面]# vmset.sh 100
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/3)
[root@server101 桌面]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.25.254.100  netmask 255.255.255.0  broadcast 172.25.254.255
        inet6 fe80::9b83:9bbf:15db:3ba3  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:4b:1a:e5  txqueuelen 1000  (Ethernet)
        RX packets 1403  bytes 2053091 (1.9 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1038  bytes 60260 (58.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

2.web服务器的默认访问目录为/var/www/html,默认发布内容为default‘s page

(1)安装nginx.x86_64

[root@server101 桌面]#  dnf install nginx.x86_64 -y

已安装:
  nginx-1:1.20.1-14.el9_2.1.x86_64                                              
  nginx-core-1:1.20.1-14.el9_2.1.x86_64                                         
  nginx-filesystem-1:1.20.1-14.el9_2.1.noarch                                   
  redhat-logos-httpd-90.4-2.el9.noarch                                          

完毕!

(2)开启服务

[root@server101 ~]# systemctl enable --now nginx.service
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /usr/lib/systemd/system/nginx.service.
(3)关闭防火墙并查看状态

[root@server101 桌面]# systemctl disable firewalld
[root@server101 桌面]# systemctl stop firewalld
[root@server101 桌面]# systemctl status firewalld
○ firewalld.service - firewalld - dynamic firewall daemon
     Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; prese>
     Active: inactive (dead)
       Docs: man:firewalld(1)
 

(3)编辑  vim /etc/nginx/nginx.conf

 server {
        listen       80;
        listen       [::]:80;
        server_name  _;
        #root         /usr/share/nginx/html;
        root          /var/www/html;
        index         index.html;

(4)编辑完成后,wq退出保存,查错,无错后重启服务,查看访问目录,没有的话就创一个。
[root@server101 nginx]# vim /etc/nginx/nginx.conf
[root@server101 nginx]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@server101 nginx]#  systemctl restart nginx.service
[root@server101 nginx]# mkdir -p /var/www/html
[root@server101 nginx]# echo default‘s page > /var/www/html/index.html
(5)测试:

[root@server101 nginx]# curl 172.25.254.100
default‘s page


3.站点news.timinglee.org默认发布目录为/var/www/virtual/timinglee.org/news
默认发布内容为 news.timinglee.org

(1)编辑 vim /etc/nginx/nginx.conf

注释server顶部的include /etc/nginx/conf.d/*.conf;

 #include /etc/nginx/conf.d/*.conf;

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

随后复制一份到server的末端

error_page 500 502 503 504 /50x.html;
        location = /50x.html {
        }
    }
        include /etc/nginx/default.d/*.conf;

接着进入/etc/nginx/conf.d/,并进行编辑子目录文件

[root@server100 ~]#  vim /etc/nginx/nginx.conf
[root@server100 ~]# cd /etc/nginx/conf.d/
[root@server100 conf.d]# pwd
/etc/nginx/conf.d
[root@server100 conf.d]# vim vhosts.conf

子目录内容
server {
          listen 80;
          server_name news.timinglee.org;
          root /var/www/virtual/timinglee.org/news;
          index index.html;
      }
[root@server100 conf.d]# mkdir -p /var/www/virtual/timinglee.org/news
创建默认发布内容

[root@server100 conf.d]# echo news.timinglee.org > /var/www/virtual/timinglee.org/news/index.html

本地解析

[root@server101 conf.d]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.25.254.100 server100.timinglee.org

测试 

root@server101 ~]# curl news.timinglee.org
curl: (6) Could not resolve host: news.timinglee.org


4.站点login.timinglee.org在被访问时必须强制走加密协议,其默认发布目录为/var/www/virtual/timinglee.org/login
默认发布内容为login.timinglee.org

编辑子目录文件

server{
        listen 80;
        server_name login.timinglee.org;
        root /var/www/virtual/timinglee.org/login;
        index index.html;
}
创建发目录路径

[root@server100 conf.d]# mkdir -p /var/www/virtual/timinglee.org/login
默认发布内容

root@server100 conf.d]# echo login.timinglee.org >  /var/www/virtual/timinglee.org/login/index.html

创建加密文件

[root@server100 ~]#  mkdir /etc/nginx/certs

[root@server100 ~]#  openssl req -newkey rsa:2048 -nodes -sha256 -keyout /etc/nginx/certs/timinglee.org.key -x509 -days 365 -out /etc/nginx/certs/timinglee.org.crt
..+.+...........+.......+.....+.......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*......+.......+...+........+....+...+......+..+...+....+..+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.......+.....+.............+..+....+..+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
.....+..+.......+........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.+............+....+..+.......+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...+.....+....+..+...+......+.+......+.....+...............+....+.....+.+........+.........+............+....+.....+.+...+.....+.......+.....................+...+......+..............+......+.+...+.....+......+..........+...+..+.........+.+........+...+.......+...+.........+....................+.+........+.+......+.....+.............+..+.......+.....+.+......+...+...+.....+.......+..+...+......+.......+...+............+........+..........+...............+......+...+.....+.+.........+........+.........+...+......................+...+..+...+......+......+...............+.+............+..+...+......+.+...........+...+.......+........................+...+..+...+.......+......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Shanghai             
Locality Name (eg, city) [Default City]:Xi'an
Organization Name (eg, company) [Default Company Ltd]:timinglee
Organizational Unit Name (eg, section) []:webserver
Common Name (eg, your name or your server's hostname) []:www.timinglee.org
Email Address []:admin@timinglee.org
接着编辑子目录文件

erver {   listen 443 ssl;

        server_name login.timinglee.org;

        ssl_certificate "/etc/nginx/certs/timinglee.org.crt";

        ssl_certificate_key "/etc/nginx/certs/timinglee.org.key";

        root /var/www/virtual/timinglee.org/login;

        index index.html;

}
强制加密

server {
        listen 80;

        server_name login.timinglee.org;   

        rewrite ^/(.*)$ https://login.timinglee.org/$1 permanent;

检错

[root@server101 conf.d]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

无误后重启服务

[root@server101 conf.d]# systemctl restart nginx.service

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/829791.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Swift中TableView的编辑模式

Swift中TableView的编辑模式可以通过UITableView的属性isEditing来控制。 要将TableView设置为编辑模式&#xff0c;可以使用以下代码&#xff1a; tableView.isEditing true要退出编辑模式&#xff0c;可以使用以下代码&#xff1a; tableView.isEditing false当TableVie…

鑫海移民荣耀呈现:EB5投资移民盛宴落幕,卓越项目引领投资新潮

随着春日的暖阳渐渐铺满大地&#xff0c;我们鑫海移民集团在这个充满希望的季节里&#xff0c;举办了一场意义非凡的EB5投资移民专题活动。于2024年4月27日&#xff08;周六&#xff09;下午13:30&#xff0c;在北京渤海润泽威斯汀酒店隆重举行&#xff0c;我们与众多热情的参与…

数据结构-前缀树

前缀树 前缀树定义 前缀树&#xff08;Trie树&#xff09;&#xff0c;又称字典树、单词查找树或键树&#xff0c;是一种专门设计用于高效存储和检索字符串集合中词项的树形数据结构。其核心特性在于能够快速实现字符串的前缀匹配&#xff0c;极大减少了无谓的字符比较&#xf…

微信小程序详解

微信小程序是一种无需下载安装即可使用的应用&#xff0c;它实现了应用“触手可及”的梦想&#xff0c;用户只需扫一扫或搜索一下即可打开应用。微信小程序全面开放申请后&#xff0c;企业、政府、媒体、其他组织或个人开发者均可申请注册。 微信小程序的特点包括&#xff1a;…

基于java的商店积分管理系统的设计与实现

功能需求 从功能上可以划分为个人信息管理、商店管理、平台管理、订单管理和数据分析。后台管理系统主要服务于商户和平台管理员&#xff0c;兑换用户是属于商户平台的自有用户&#xff0c;不会被纳入到后台管理系统中来。商户用户可以对自己的积分进行管理&#xff0c;平台管…

echarts下载图片

toolbox: {show: true,//展示工具栏itemSize:20,//icon的大小iconStyle:{borderColor:"#409eff",borderWidth:"3",color:"#fff"},right:"40px",//偏移位置feature: {saveAsImage: {title: "下载图表", //鼠标滑过之后文案na…

用wps自带工具给图片做标注

在wps中&#xff0c;选中wps中的图片&#xff0c;右键选择【编辑】进入图片编辑器&#xff0c;在选项卡面板右侧选择【标注】工具&#xff0c;再选择【添加文本】工具&#xff0c;即可直接在图片上输入文字&#xff0c;标注完成后选择【覆盖原图】就完成标注任务。

【Canvas与艺术】绘制美国星条旗

注意&#xff1a; 该图位置和大小都是按照网上说明精确绘制的。 【成图】 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>使…

uniapp 阿里云点播 其他功能

详细记录 阿里云播放器 基础功能 官方文档 继 根据业务开发了其他功能 大家可以结合 上一篇 基础阿里云播放器使用 使用

C++指针的比较

指针可以用关系运算符进行比较&#xff0c;如 、< 和 > 整体的流程&#xff1a; 初始化指针ptr指向数组var的第一个元素。进入while循环&#xff0c;循环条件是ptr的地址小于或等于数组最后一个元素的地址。在循环内&#xff0c;首先打印ptr指向的地址和该地址处的值。然…

Laravel 多语言项目开发

配置 Laravel 已经内置了对多语言的支持&#xff0c;可以使用 Laravel 的本地化&#xff08;localization&#xff09;功能轻松实现多语言。 首先&#xff0c;你需要创建一个语言文件存储你的翻译内容。在 resources/lang 目录下&#xff0c;创建一个你需要的语言文件夹&…

Mybatis学习周报总结

学习Mybatis的周报 在过去的一周里&#xff0c;我们在飞思学习和掌握Mybatis这一优秀的持久层框架。通过谭老师的两周课程&#xff0c;我也有很大的收获。以下是本周的学习总结和收获&#xff1a; 一&#xff1a;Mybatis概述&#xff1a; MyBatis&#xff0c;全称为My Batis …

【Flutter 面试题】 Dart 当中的 .. 表示什么?

【Flutter 面试题】 Dart 当中的 … 表示什么? 文章目录 写在前面口述回答补充说明写在前面 🙋 关于我 ,小雨青年 👉 CSDN博客专家,GitChat专栏作者,阿里云社区专家博主,51CTO专家博主。2023博客之星TOP153。 👏🏻 正在学 Flutter 的同学,你好! 😊 Flutter…

mysql锁表的原因及mysql行锁

mysql锁表的原因 锁是计算机协调多个进程或线程并发访问某一资源的机制。 在数据库中&#xff0c;除传统的计算资源&#xff08;如CPU、RAM、I/O等&#xff09;的争用以外&#xff0c;数据也是一种供许多用户共享的资源。 如何保证数据并发访问的一致性、有效性是所有数据库…

FA-128晶振用于医疗设备

血糖仪已成为家庭常用的医疗设备,日本爱普生晶振公司生产的2016封装,32MHz贴片晶振可完美应用于医疗器械血糖仪,此款晶振订货型号为X1E000251005900晶振,型号为FA-128,负载电容分8PF,精度10PPM,其尺寸参数为2.0x1.6x0.5mm,符合ROHS标准且无铅,具有封装尺寸超小,高精度,频率范围…

C++ | Leetcode C++题解之第55题跳跃游戏

题目&#xff1a; 题解&#xff1a; class Solution { public:bool canJump(vector<int>& nums) {int n nums.size();int rightmost 0;for (int i 0; i < n; i) {if (i < rightmost) {rightmost max(rightmost, i nums[i]);if (rightmost > n - 1) {r…

【HarmonyOS4学习笔记】《HarmonyOS4+NEXT星河版入门到企业级实战教程》课程学习笔记(一)

课程地址&#xff1a; 黑马程序员HarmonyOS4NEXT星河版入门到企业级实战教程&#xff0c;一套精通鸿蒙应用开发 &#xff08;本篇笔记对应课程第 1 - 2节&#xff09; P1《课程介绍》 开场白&#xff0c;HarmonyOS 的一个简介&#xff0c;话不多说&#xff0c;直接看图吧&…

第十五届蓝桥杯省赛第二场C/C++B组C题【传送阵】题解(AC)

解题思路 由于 a a a 数组是一个 1 1 1 到 n n n 的一个排列&#xff0c;那么形成的一定是如下形式&#xff1a; 一定会构成几个点的循环&#xff0c;或者是几个单独的点。 从任意点开始&#xff0c;如果能进入一个循环&#xff0c;一定可以将整个循环的宝藏都拿走&#x…

QSqlTableModel的canFetchMore、fetchMore效率太低,需替换

问题描述&#xff1a;SQLITE数据库&#xff0c;使用QSqlTableModel获取行数&#xff0c;调用函数rowCount()&#xff0c;仅能获取256行&#xff0c;故使用下面代码获取实际行数&#xff1a; while(m_model->canFetchMore()){m_model->fetchMore();} 但实际使用发现效率…

[vant] 图片预览关闭按钮显示不正常

如果这里显示不正常, 那就应该是按照文档引入了 显示有问题, 直接不引入, 声明一下就行