配置yum仓库
vim /etc/yum.repos.d/rhel.repo 名称随意,但一定要repo结尾
[rhel] #yum的唯一标识,随意起名不能重复
name=rhel #名字
baseurl=file:///media/cdrom #本地用file:/// 第三个/是表示根目录。如果使用网络直接配置 http://mirrors.163.com/centos/7.6.1810/
enabled=1
gpgcheck=0
wq!
yum install httpd
systemctl restart httpd
systemctl enable httpd
cd /var/www/html var存储经常改变的文件
echo "hahaha" > index.html
用浏览器访问http://本机地址
将apache http的默认目录指向到 /home/wwwroot
vim etch/httpd/conf/httpd.conf
DocumentRoot /home/wwwroot
wq!
systemctl restart httpd
cd /home/wwwroot
ls
echo "hohoho" > index.html
SELinux 安全子系统。SELinux域 控制软件的权限,不能做越权的事情。SELinux安全上下文 限制文件只能被谁访问。
vim /etc/selinux/config 有三种模式enforcing强制开启,也是默认模式。permessive警告模式,访问请求记录到日志。disabled禁用模式,关闭selinux,一般工作中都是关闭模式。
getenforce 查询selinux的模式
setenforce 0 临时关闭selinux模式,此时http://本机地址可以访问。
setenforce 1 开启selinux模式
ls -dZ /var/www/html查看文件的selinux的权限
ls -dZ /var/home/wwwroot
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot 修改当前目录的上下文的权限
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/* 修改当前目录的文件的上下文的权限
ls -dZ /home/wwwroot
restorecom -Rv /home/wwwroot 生效上面的设置
浏览器访问http://本机ip 就可以访问了
为每个用户创建一个http网站
ip linuxprobe
passwd linuxprobe 重启密码
vim /etc/httpd/conf.d/userdir.conf
#UserDir disabled
UserDir public_html public_htmli
systemctl restart httpd
每个用户自己的家目录 http://ip/username
su - linuxprobe
cd /home/wwwroot
mkdir public_html
cd public_html/
echo "Linuxprobe.com" > index.html
cd ..
chmod -Rf 755 ~ ~指的是自己的家目录
setenforce 0
http://ip/~linuxprobe/index.html
setenforce 1
getsebool -a 显示所有和服务相关的策略
getsebool -a | grep httpd
setsebool -P httpd_enable_homedirs=on -P是永久生效的意思,开始这个策略就可以不用临时关闭selinux了。也可以访问网站
htpasswd -c /etc/httpd/passwd piaopiao 开启没用用户登录都需要密码 piaopiao是用户名 密码回车后输入。
vim /etc/httpd/conf.d/userdir.conf
<Directory "/home/*/public_html">
authuserfile "/etc/httpd/passwd" 是指刚刚创建的文件,里面放着用户名密码
authname “hohohoho” 不是设置用户名,是设置访问网站时的提示是信息。
authtype basic
requeire user piaopiao
</Directory>
systemctl restart httpd
http://ip 访问会有提示输入用户名 密码。 输入linuxprobe linuxprobe 不能登录,只能输入piaopiao linux
还原虚拟机
虚拟主机
vim /etc/sysconfig/network-scripts/ifcfg-eno167777
IPADDR0=192.168.10.10
IPADDR1=192.168.10.20
IPADDR2=192.168.10.30
yum install httpd 安装服务程序 apache http
vim /etc/httpd/conf/httpd/conf
在120行添加
<VirtualHost 192.168.10.10>
documentroot /home/wwwroot/10 先创建这个文件夹
servername www.linuxprobe.com
<Directory /home/wwwroot/10> 不区分大小写
allowoverride none 伪静态,也就是URL Rewrite(URL重写),它配合利用正则表达式,可以将url进行修改,可以利用网站的seo,也可以使url变得更加整洁,很是方便。
require all granted
</Directory>
</VirtualHost>
<VirtualHost 192.168.10.20>
documentroot /home/wwwroot/20 先创建这个文件夹
servername www.linuxprobe.com
<Directory /home/wwwroot/20>
allowoverride none 伪静态,也就是URL Rewrite(URL重写),它配合利用正则表达式,可以将url进行修改,可以利用网站的seo,也可以使url变得更加整洁,很是方便。
require all granted
</Directory>
</VirtualHost>
<VirtualHost 192.168.10.30>
documentroot /home/wwwroot/30 先创建这个文件夹
servername www.linuxprobe.com
<Directory /home/wwwroot/30> 不区分大小写
allowoverride none 伪静态,也就是URL Rewrite(URL重写),它配合利用正则表达式,可以将url进行修改,可以利用网站的seo,也可以使url变得更加整洁,很是方便。
require all granted
</Directory>
</VirtualHost>
wq!
cd /home/wwwroot
echo "192.168.10.1111" > 10/index.html
echo "192.168.10.2222" > 20/index.html
echo "192.168.10.3333" > 30/index.html
systemctl restart httpd
setenforce 0
http://192.168.10.10
setenforce 1
ls -dZ /var/www/html
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/10
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/10/*
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/20
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/20/*
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/30
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/30/*
restorecon -Rv /home/wwwroot 生效
http://192.168.10.10
恢复虚拟机
通过域名进行虚拟主机映射
vim /etc/hosts 设置域名ip绑定
192.168.10.10 www.a.com
192.168.10.20 www.b.com
192.168.10.30 www.c.com
yum install httpd
mkdir -p /home/wwwroot/a
mkdir -p /home/wwwroot/b
mkdir -p /home/wwwroot/c
cd /home/wwwroot
echo "a" > a/index.html
echo "b" > b/index.html
echo "c" > c/index.html
semanage fcontext -a -t httpd_sys_content_f /home/wwroot
semanage fcontext -a -t httpd_sys_content_f /home/wwroot/a
semanage fcontext -a -t httpd_sys_content_f /home/wwroot/a/*
semanage fcontext -a -t httpd_sys_content_f /home/wwroot/b
semanage fcontext -a -t httpd_sys_content_f /home/wwroot/b/*
semanage fcontext -a -t httpd_sys_content_f /home/wwroot/c
semanage fcontext -a -t httpd_sys_content_f /home/wwroot/c/*
restorecon -Rv /home/wwwroot
vim /etc/httpd/conf/httd.conf
120行添加
<virtualhost 192.168.10.10>
document "/home/wwwroot/a"
servername www.a.com
<directory /home/wwwroot/a>
allowoverride none
require all granted
</directory>
</virtualhost>
<virtualhost 192.168.10.20>
document "/home/wwwroot/b"
servername www.b.com
<directory /home/wwwroot/b>
allowoverride none
require all granted
</directory>
</virtualhost>
<virtualhost 192.168.10.30>
document "/home/wwwroot/c"
servername www.c.com
<directory /home/wwwroot/c>
allowoverride none
require all granted
</directory>
</virtualhost>
恢复虚拟机,试验基于端口的虚拟主机
yum install httpd
cd ~
mkdir -p /home/wwwroot/6111
mkdir -p /home/wwwroot/6222
echo "port:6111" > /home/wwwroot/6111/index.html
echo "port:6222" > /home/wwwroot/6222/index.html
ls -dZ /var/www/html
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6111
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6111/*
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6222
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6222/*
restorecon -Rv /home/wwwroot
vim /etc/httpd/conf/httpd/conf
Listen 6111
Listen 6222
<virtualhost 192.168.10.10:6111>
documentroot /home/wwwroot/6111
servername www.6111.com
<directory /home/wwwroot/6111>
allowoverride none
require all granted
<directory>
<virtualhost>
<virtualhost 192.168.10.10:6222>
documentroot /home/wwwroot/6222
servername www.6222.com
<directory /home/wwwroot/6222>
allowoverride none
require all granted
<directory>
<virtualhost>
systemctl restart httpd
semanage port -l 列出所有的服务程序对应的端口号
semanage port -l | grep http
semanage port -a -t http_port_t -p tcp 6111 -p是指协议的意思
semanage port -a -t http_port_t -p tcp 6222-p是指协议的意思
systemctl restart httpd
http://192.168.10.10:6111
恢复虚拟机
apache 访问控制
yum install httpd
cd /var/www/html
mkdir server
cd server
echo "hoho" > index.html
cd ..
vim /etc/httpd/conf/httpd.conf
<directory "/var/www/html/server">
setenvif User -Agent "Firefox" ff=1 如果当前用户的浏览器是firefox 1代表开启
Order allow,deny 定义允许和拒绝的规则,如果下面没有被允许就默认会被拒绝。
allow from env=ff 只允许firefox
</directory>
systemctl restart httpd
http://www.6111.com/server
iptables -F
相关推荐
"Linux I2C总线分析(主要是probe的方式)" Linux I2C总线分析是指Linux操作系统中I2C总线的工作机制和结构。I2C总线是串行总线,它可以实现多个设备之间的数据交换。Linux I2C总线分析可以分为三个组成部分:I2C...
在嵌入式Linux系统中,`probe`是一个关键机制,用于连接硬件设备(device)与驱动程序(device_driver)。在Linux内核加载过程中,probe机制允许内核发现并初始化硬件设备,确保驱动程序能正确地识别和管理这些设备...
6. **跨平台**:ucProbe支持Windows、Linux和Mac OS操作系统,满足不同开发环境的需求。 7. **源码级调试**:通过集成的GDB调试服务器,ucProbe能实现源码级别的调试,这对于理解代码执行流程和查找错误至关重要。 ...
在Linux驱动程序中,`probe`函数是设备驱动的核心部分,用于初始化和配置硬件设备。这个函数的调用时机和过程是设备驱动模型中的关键环节。当我们在编写驱动时,通常会定义一个`probe`函数,该函数会在特定条件下被...
probe 是 I2C 设备驱动中非常重要的一个步骤,在 probe 中,我们需要根据设备的地址等信息来探测设备,并注册设备驱动。这一步骤非常重要,因为它决定了设备驱动的生命周期。 在 Linux 中,I2C 设备驱动的实现主要...
文献资料安装开发安装QtPyVCP使用文档资源 (#hazzy)(隔离) (#qtpyvcp:matrix.org)(桥接) (桥接) (桥接)依存关系 Python 2.7 PyQt5或PySide2 Probe Basic是使用LinuxCNC Debian 9 x64(拉伸) 和Ubuntu ...
在这个文件中,你会看到函数如`ov7725_probe`用于设备探测,`ov7725_remove`用于设备移除,以及`ov7725_video_init`和`ov7725_video_cleanup`用于视频流的开启和关闭。此外,还有处理I2C通信的代码,以读写传感器的...
在Qt与GStreamer结合开发图像处理应用时,`probe`是一个强大的工具,它允许我们对数据流进行实时分析和操作。...在Linux环境下,这样的技术可以广泛应用于各种图像处理和计算机视觉任务,如视频分析、对象检测等。
Linux 设备驱动程序浅谈 Linux 设备驱动程序是指用于操作系统和硬件设备之间的交互接口。它是一个小程序,包含有关硬件设备的信息,用于管理计算机的硬件资源。 Linux 设备驱动程序扮演沟通的角色,把硬件的功能...
util-linux-ng-2.17.2/shlibs/blkid/src/probe.c [code] util-linux-ng-2.17.2/shlibs/blkid/src/read.c [code] util-linux-ng-2.17.2/shlibs/blkid/src/resolve.c [code] util-linux-ng-2.17.2/shlibs/blkid/src...
- 编写识别设备的`probe`函数,通过比较设备ID(Vendor ID和Device ID)来确定是否支持该设备。 - 注册中断处理程序,处理来自PCIe设备的中断。 - 初始化设备,包括分配资源、设置寄存器、加载固件等。 - 实现...
当内核启动并加载驱动后,会扫描设备树,寻找匹配的平台设备,并调用驱动的probe方法(即初始化函数)。驱动程序在接收到探测请求后,可以通过I²C总线的`i2c_transfer()`函数进行读写操作,实现对AT24C02的访问。 ...
在Linux操作系统中,为了与硬件进行交互,需要适配相应的驱动程序。本篇文章将深入探讨RX8025在STM和Linux环境下的驱动实现以及常见问题。 首先,STM32系列微控制器是意法半导体公司推出的一种基于ARM Cortex-M内核...
在Linux系统中,USB(通用串行总线)驱动是连接外部设备,如键盘、鼠标、打印机、手机、存储设备等的关键组件。USB驱动程序属于内核的一部分,它负责管理和控制USB设备,使得操作系统能够识别并正确地与这些设备交互...
标题中的"qmi_wwan.rar_V2_linux lte_linux qmi_qmi_qmi_wwan"揭示了这个压缩包是关于Linux系统下用于3G和4G(LTE)无线广域网(WWAN)设备的驱动程序。这里的关键词"V2"表示这是驱动的第二个版本,通常意味着比之前...
"Linux系统下MTD/CFI驱动介绍" 在Linux系统下,MTD/CFI驱动是Flash存储器的驱动程序。MTD是Memory Technology Device的缩写,是Linux系统下的Flash存储器驱动接口。CFI是Common Flash Interface的缩写,是一个工业...
硬件探针1.6测试版硬件探针工具(hw-probe)-借助Linux硬件数据库来检测硬件,检查可操作性并查找驱动程序的工具: : 对于BSD用户: : 内容存货离线检视ACPI转储可操作性禁用日志隐私执照 关于探针—是计算机的硬件...
- 在NorFlash芯片被正确识别之后,Linux内核会通过调用`cfi_probe()`函数来初始化芯片。这一步通常发生在驱动加载的过程中。 - `cfi_probe()`函数会根据NorFlash的具体规格配置相应的参数,并设置好读写等操作接口...
《IBM Corporation Linux驱动程序探索——以xenbus_probe为例》 在开源的世界里,IBM Corporation以其深厚的技术底蕴和对Linux的贡献而闻名。本篇将深入探讨IBM为Linux内核提供的一个关键组件——xenbus_probe,这...