Linux-Day11.WEB服务,虚拟主机

今日目标:

  1. Web基础应用
  2. NFS服务基础
  3. 触发挂载(了解)

一、服务的管理

Httpd web服务 /usr/sbin/httpd

ftp ftp服务 /usr/sbin/vsftpd

用户---》systemd ---》服务

•上帝进程:systemd

•Linux系统和服务管理器

--是内核引导之后加载的第一个初始化进程(PID=1)

--负责掌控整个Linux的运行/服务资源组合

•一个更高效的系统&服务管理器

--开机服务并行启动,各系统服务间的精确依赖

--配置目录:/etc/systemd/system/

--服务目录:/lib/systemd/system/

--主要管理工具:systemctl

root@svr7 \~# systemctl -t service --all #列出所有的服务

•对于服务的管理(与手动启动有冲突)

systemctl restart 服务名 #重起服务

systemctl start 服务名 #开启服务

systemctl stop 服务名 #停止服务

systemctl status 服务名 #查看服务当前的状态

systemctl enable 服务名 #设置服务开机自启动

systemctl disable 服务名 #设置服务禁止开机自启动

systemctl is-enabled 服务名 #查看服务是否开机自启

]# yum -y install httpd

]# > /etc/resolv.conf #清除DNS文件内容

]# killall httpd #杀死手动启动的httpd

]#systemctl restart httpd #重启httpd服务

]# systemctl status httpd #查看服务httpd状态

]#systemctl enable httpd #设置httpd开机自启动

Created symlink from

/etc/systemd/system/multi-user.target.wants/httpd.service to

/usr/lib/systemd/system/httpd.service.

只有在第一次启动的时候有此输出

]# systemctl is-enabled httpd #查看httpd是否是开机自启动

]# systemctl disable httpd #关闭httpd开机自启动

Removed symlink /etc/systemd/system/multi-user.target.wants/httpd.service.

]# systemctl is-enabled httpd #查看httpd是否是开机自启动

二、独立web主机

Web通信基本概念

基于B/S(Browser /Server )架构的网页服务

-服务端提供网页

-浏览器下载并显示网页

  1. Hyper Text Markup Language ,超文本标记语言
  2. Hyper Text Transfer Protocol ,超文本传输协议

独立web站点的快速部署

  • Linux 中的Web服务

root@svr7\~# yum -y install httpd

root@svr7\~# ls /var/www/html/

root@svr7\~# killall httpd

root@svr7\~# systemctl restart httpd

root@svr7\~# curl 192.168.4.7

root@svr7\~# echo web 服务 >/var/www/html/index.html

root@svr7\~# curl 192.168.4.7

  • 两台机器设置SELinux运行模式

root@svr7\~# getenforce

root@svr7\~# setenforce 0 ‌

root@svr7\~# getenforce

root@svr7\~# vim /etc/selinux/config

SELINUX=permissive

  • 两台机器设置防火墙(停止防火墙服务)

root@svr7\~# systemctl stop firewalld

root@svr7\~# systemctl disable firewalld

  • 修改配置文件

软件包:httpd

****·****系统服务:httpd

****·****提供的默认配置

-Listen :监听地址:端口(80)

-ServerName :本站点注册的DNS名称(空缺)

-DocumentRoot :网页文件根目录(/var/www/html)

-DirectoryIndex :起始页/首页文件名(index .html)

/etc/httpd/conf/httpd.conf httpd的配置文件

root@svr7\~# mkdir /var/www/myweb

root@svr7\~# echo wo shi lalala > /var/www/myweb/index.html

root@svr7\~# vim /etc/httpd/conf/httpd.conf

......

DocumentRoot "/var/www/myweb"

......

root@svr7\~# systemctl restart httpd

root@svr7\~# curl http://192.168.4.7

****·****基于网页文件目录,进行访问控制

-当子目录没规则,默认继承上一级目录规则

-针对此目录有单独配置,则不继成上一级目录规则

允许所有人访问

拒绝所有人访问

/var/www #允许所有人访问

/var/www/myweb

/var /abc

<Directory "/webroot">

Require all granted #允许所有人访问

</Directory>

root@svr7\~# mkdir /webroot

root@svr7\~# echo wo shi web > /webroot/index.html

root@svr7\~# vim /etc/httpd/conf/httpd.conf

......

DocumentRoot "/webroot"

<Directory "/webroot">

Require all granted

</Directory>

......

root@svr7\~# systemctl restart httpd

root@svr7\~# curl http://192.168.4.7

浏览器访问 192.168.4.7-----》服务器192.168.4.7----》http--------》httpd软件---------》/etc/httpd/conf/httpd.conf--------》DocumentRoot-------》/webroot -------》index.html

客户端: http://192.168.4.7

服务端:/webroot

http://192.168.4.7 = DocumentRoot设置的路径

客户端 http://192.168.4.7/abc

服务端 /webroot/abc

客户端 http://192.168.4.7/webroot/abc/test

服务端 /webroot/webroot/abc/test

  • Listen :监听地址:端口(80)

HTTP协议 默认端口:80

ftp协议 默认端口:21

建议自定义端口大于1024,端口极限65535

root@svr7\~# vim /etc/httpd/conf/httpd.conf

......

Listen 80

Listen 8080

......

root@svr7\~# systemctl restart httpd

root@svr7\~# curl 192.168.4.7:8080

三、虚拟web主机

· 虚拟web主机

---有一台服务器提供多个不同的web站点

****·****区分方式

---基于域名的虚拟机

---基于端口的虚拟机

---基于ip地址的虚拟主机

· 配置文件路径

---/etc/httpd/conf/httpd.conf #主配置文件

---/etc/httpd/conf.d/*.conf #调用配置文件

· 为每个虚拟站点添加配置

<VirtualHost IP地址:端口>

ServerName 此站点的DNS名称

DocumentRoot 此站点的网页根目录

</VirtualHost>

虚拟机A:

root@svr7\~# vim /etc/httpd/conf.d/haha.conf

<VirtualHost *:80>

ServerName www.qq.com

DocumentRoot /var/www/qq

</VirtualHost>

<VirtualHost *:80>

ServerName www.lol.com

DocumentRoot /var/www/lol

</VirtualHost>

root@svr7\~# mkdir /var/www/qq /var/www/lol

root@svr7\~# ls /var/www

root@svr7\~# echo wo shi qq > /var/www/qq/index.html

root@svr7\~# echo wo shi lol > /var/www/lol/index.html

root@svr7\~# systemctl restart httpd

采用/etc/hosts文件直接解析域名,只为本机解析

root@svr7\~# vim /etc/hosts

......

192.168.4.7 www.qq.com www.lol.com

......

root@svr7\~# curl http://www.qq.com

root@svr7\~# curl http://www.lol.com

四、NFS服务基础

NFS共享概述

Network File System ,网络文件系统

-用途:为客户机提供共享使用的文件夹

-协议:NFS(TCP/UDP2049)、RPC(TCP/UDP111)

所需软件包:nfs-utils

系统服务:nfs-server

/etc/exports

虚拟机A:

]# rpm -q nfs-utils

]#mkdir /public

]# echo 123 > /public/a.txt

]# ls /public

]# vim /etc/exports

/public *(ro)

/public 192.168.4.207(ro)

]# systemctl restart rpcbind

]#systemctl restart nfs-server

虚拟机B:

]# mkdir /mnt/abc

]#rpm -q nfs-utils

]#showmount -e 192.168.4.7:/public

]#mount 192.168.4.7:/public /mnt/abc

]#ls/mnt/abc

自动挂载

]#vim /etc/fstab

192.168.4.7:/public /mnt/abc nfs defaults,_netdev 0 0

]#umount /mnt/abc

]#mount -a

]#ls /mnt/abc

管理运行级别

RHEL6:运行级别 300

0:关机 0个服务

1:单用户模式(基本功能的实现,破解Linux密码) 50个服务

2:多用户字符界面(不支持网络) 80个服务

3:多用户字符界面(支持网络)服务器默认运行级别 100个服务

4:未定义 0个服务

5:图形界面 300个服务

6:重起 0个服务

切换运行级别:init 数字

RHEL7:运行模式(运行级别)

字符模式:multi-user.target

图形模式:graphical.target

当前直接切换到字符模式

]# systemctl isolate multi-user.target #相当于原来的init 3

当前直接切换到图形模式

]# systemctl isolate graphical.target #相当于原来的init 5

查看每次开机默认进入模式

root@svr7 /#systemctl get-default

设置永久策略,每次开机自动进入multi-user.target

root@svr7 /# systemctl set-default multi-user.target

root@svr7 /#reboot

相关推荐
大树8815 小时前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠15 小时前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质16 小时前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
bush416 小时前
嵌入式linux学习记录十四、术语
linux·嵌入式
载数而行52016 小时前
Linux 11 动态监控指令top
linux
小宇宙Zz16 小时前
Maven依赖冲突
java·服务器·maven
Inhand陈工17 小时前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智17 小时前
ARP代理--工作原理
运维·网络·arp·arp代理
不会C语言的男孩17 小时前
Linux 系统编程 · 第 8 章:进程基础
linux·c语言
shushangyun_17 小时前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化