HCIP open-Euler学习文档

第一期 操作系统基础,web基础

OpenEuler 目录

  1. 学习系统常用应用(Apache + Nginx + DNS + MySQL)
  2. 服务器集群架构(HAProxy, Nginx, LVS,keepalived)
  3. 存储管理(GlusterFS,NAS,SAN)
  4. 自动化基础(Ansible,SaltStack)
  5. Shell脚本基础(变量,语法,函数,正则,awk,sed,grep)
  6. 系统安全加固,内核参数配置介绍,Selinux
  7. Zabbix监控 & A-Ops(openEuler自带)
  8. 综合项目部署搭建(Zabbix监控 + LVS/nginx/Keepalived 集群部署 + GlusterFS 分布式存储 + Mysql主备集群 + ansible 部署 + ordPress 应用)

文章目录

  • [第一期 操作系统基础,web基础](#第一期 操作系统基础,web基础)
    • [OpenEuler 目录](#OpenEuler 目录)
    • [系统常用应用(www,Apache + Nginx + DNS + MySQL)](#系统常用应用(www,Apache + Nginx + DNS + MySQL))
      • [www 万维网](#www 万维网)
      • Apache
      • Nginx
      • [LAMP & LNMP](#LAMP & LNMP)

系统常用应用(www,Apache + Nginx + DNS + MySQL)

www 万维网

  1. 万维网三要素: URI(uniform resource locator) + HTML(HyperText Markup Language) + HTTP(HyperText Transfer Protocol)
  2. HTTP版本:
    • 0.9 仅支持GET方法
    • 1.0 新增POST、HEAD方法,单次连接
    • (稳定常用)1.1 新增PUT,PATCH,OPTIONS,DELETE方法,新增持久连接
    • 2.0 新增多路复用, header信息压缩,乱序传输
    • 3.0 改用TCP 为UDP
  3. https 和 http
    • 默认端口 http 为 80,https为443
    • https 新增证书验证,校验域名与IP的对应关系,并通过证书对传输的数据进行加密
    • https 牺牲少量效率提高网站的安全性
  4. Web服务常用状态码
    • 200 正常
    • 403 访问拒绝,未登录或已登录权限不够
    • 401 未登录
    • 404 地址错误,资源不存在
    • 301 重定向地址
    • 500及500+ 错误

Apache

  • 历史悠久的web服务器,能代理静态资源(图片,文档,html)等,也能代理网络服务请求
  • 与下面的nginx 功能非常相似,apache拥有很丰富的插件,功能定制
  1. apache 的三种处理模式
    • prefork, 多进程处理,一个进程处理一个请求
    • worker,多进程 + 多线程,一个进程中有多个线程,一个线程处理一个请求
    • Event,在Worker模式下,新增一个监听进程,接收并转发请求给实际工作的线程
  2. 配置apache 部署一个简单的前端网站
    • 安装apache, yum install -y httpd
    • 配置文件:/etc/httpd/conf/httpd.conf
    • 启动服务:systemctl enable --now httpd
      1. 默认端口为80,如果冲突,修改配置文件
      2. 打开防火墙(linux系统,宝塔,云服务商) 的80端口
    • 为主页添加内容:echo "Hello Apache!" > /var/www/html/index.html
    • 打开浏览器访问 "http://ip", 此处IP需要更换为你的实际IP地址,本地访问可使用 "http://127.0.0.1"
  3. Apache Httpd功能介绍
    • 虚拟主机:多端口,多域名访问,多IP地址访问(一台机器有多张网卡时)
    • 权限控制
    • 访问优化(压缩,长连接,进程/线程数量)
    • 访问记录(服务日志,错误日志,调整日志输出)

Nginx

  • nginx 是一个功能强大,轻量化的代理服务器,可部署前端页面,代理后端端口,实现负载均衡以及故障切换功能
  1. nginx 的特性

    • 高并发
    • 内存消耗低
    • 高扩展性
    • 高可靠性
  2. nginx架构

    • Master + worker
    • 抢占机制 + 异步非阻塞模式
  3. nginx 可实现功能

    • 反向代理
    • 本地资源访问
    • 负载均衡
    • 故障切换
  4. nginx 部署一个简单的网站

    • 安装nginx,yum install -y nginx

    • 运行nginx, systemctl start nginx

    • 配置文件: /etc/nginx/nginx.conf

    • 写入自己的内容:echo "Hello Nginx" > /usr/share/nginx/html/index.html

    • 打开地址 http://ip 或者 "http://127.0.0.1"

  5. nginx 常用命令

    • 检查配置 nginx -t
    • 重新启动 nginx -s reload
    • 关闭 nginx -s quit
  6. 常用配置说明

    全局配置

    user nginx;
    worker_processes auto;
    error_log /var/log/nginx/error.log;
    pid /run/nginx.pid;
    include /usr/share/nginx/modules/*.conf;

    最大连接数

    events {
    worker_connections 1024;
    }

    虚拟主机,类似地还有Stream

    http -> server -> location

    http {
    log_format main '$remote_addr - remote_user [time_local] "request" ' 'status body_bytes_sent "http_referer" '
    '"http_user_agent" "http_x_forwarded_for"';
    access_log /var/log/nginx/access.log main;
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    types_hash_max_size 4096;
    include /etc/nginx/mime.types;
    default_type application/octet-stream;
    include /etc/nginx/conf.d/*.conf;

     server {
         listen       8777;  # ipv4 端口
         server_name  _;
         root         /usr/share/nginx/html; # 静态文件根路径
         include /etc/nginx/default.d/*.conf;
         error_page 404 /404.html;
         location = /404.html {
         }
         error_page 500 502 503 504 /50x.html;
         location = /50x.html {
         }
     }
    

    }

  7. 常用的就是对于location进行配置

  • 代理静态文件

    location / {
    root /var/www/html;
    index index.html index.htm;
    }

    location /api {
    # 反向代理地址,可用于跨域
    proxy_pass http://www.baidu.com;
    }

  1. DNS 服务
  • bind
  • named
  • dig
  • nslookup
  • host
  1. Mysql数据库
  • Mysql是一款开源,拥有免费版和商业版的数据库,支持关系型数据库,使用C/S 架构访问(Client / Server)远程访问
  • 安装 yum install -y mysql
  • 启动 systemctl enable --now mysql
  • 初次登录:mysql
  • 修改密码:alter user root@'localhost' identified by 'Hznga@12@4';
  • 创建数据库:create database mydb;
  • 查看数据库:show databases;
  • 使用密码登录:mysql -u root -p, 然后输入密码,输入时屏幕无反应

LAMP & LNMP

  • LAMP : Linux + Apache + Mysql + Php
  • LNMP :Linux + Nginx + Mysql + php
相关推荐
南宫生15 分钟前
力扣-图论-17【算法学习day.67】
java·学习·算法·leetcode·图论
sanguine__31 分钟前
Web APIs学习 (操作DOM BOM)
学习
数据的世界013 小时前
.NET开发人员学习书籍推荐
学习·.net
四口鲸鱼爱吃盐3 小时前
CVPR2024 | 通过集成渐近正态分布学习实现强可迁移对抗攻击
学习
OopspoO5 小时前
qcow2镜像大小压缩
学习·性能优化
A懿轩A5 小时前
C/C++ 数据结构与算法【栈和队列】 栈+队列详细解析【日常学习,考研必备】带图+详细代码
c语言·数据结构·c++·学习·考研·算法·栈和队列
居居飒6 小时前
Android学习(四)-Kotlin编程语言-for循环
android·学习·kotlin
kkflash36 小时前
提升专业素养的实用指南
学习·职场和发展
1 9 J7 小时前
数据结构 C/C++(实验五:图)
c语言·数据结构·c++·学习·算法
6.948 小时前
Scala——身份证号码查询籍贯
学习·scala