Apache修改了配置文件中的路径后,登录该地址网页出现问题 (其中介绍了selinux的域和安全上下文)
默认的网站数据存放在: /var/www/html
首页名称: index.html
Apache服务程序的主配置文件: /etc/httpd/conf/httpd.conf
(若是将 119 行的DocumentRoot参数修改为别的参数路径,再把在 123 行的 "/var/www" 修改为别的路径参数,重启服务后出现错误,(访问的是Apache默认页面)
Forbidden
You don't have permission to access /index.html on this server
原因是:该访问页面的行为是被禁止的,从这里我们需要了解一下SElinux,关闭SElinux就行"setenforce 0",但是在工作中最好不要关闭,下面介绍方法
SElinux全称为Security-Enhanced Linux是一个强制访问控制的安全子系统。SElinux属于MAC强制访问(Nabdatory Access Control)——既让系统中的各个服务进程都受到约束,仅能访问到所需的文件
SElinux有三种模式:
模式一:enforcing - 安全策略强制启动模式,将会拦截服务的不合法请求
模式二: permissive - 遇到服务越权访问只会发出警告而不强制拦截
模式三: disabled - 对于越权的行为不警告,也不拦截
SElinux的配置文件 : /etc/selinux/config
SElinux的允许策略包括域和安全上下文:
SElinux域:对进程资源进行限制 (查看方式 ps -Z)
SElinux安全上下文:对系统资源进行限制 (查看方式 ls -Z)
使用" ls -Z "命令检查下新旧网站数据目录的SElinux安全上下文有何不同

SElinux安全上下文是有冒号间隔的四个字段组成,以原始网站数据目录的安全上下文为例分析:
用户段:root表示root账户身份,user_u表示普通用户身份,system_u表示系统进程身份
角色段: obiect_r是文件目录角色,system_r是一般进程角色
类型段: 进程和文件都有一个类型用于限制存取权限
解决方法就是将网站目录"/home/wwwword"的安全上下文修改chesystem_u:object_r:httpd_sys_content_t:s0就行
semanage命令用于查询与修改SElinux的安全上下文
| 参数 | 作用 |
| -l | 查询 |
| -a | 增加 |
| -m | 修改 |
| -d | 删除 |
restorecon命令用于恢复SElinux文件安全上下文
| 参数 | 作用 |
| -i | 忽略不存在的文件 |
| -e | 排除目录 |
| -R | 递归处理(针对目录使用) |
| -v | 显示详细的过程 |
| -F | 强制恢复 |
修改网站数据目录的安全上下文:semanage fcontext -a -t httpd_sys_content_t /home/wwwroot
修改网站数据的安全上下文: semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/* (*代表所有文件或目录)
restorecon -RV /home/wwwroot
Apache修改了配置文件中的路径后,登录该地址网页出现问题 (其中介绍了selinux的域和安全上下文)的更多相关文章
- IDEA修改jar包中class文件后重新生成jar包
一.背景 最新想要修改rebeyond大佬的冰蝎项目,特地去网上搜索如何修改jar包中的源码再替换回去的方法,但由于现在的一些文章写的太烂,导致走了很多弯路,因此写下这篇快速使用IDEA修改源码并替换 ...
- apache AllowEncodedSlashes 允许URL中对路径分隔符进行编码
2013年11月29日 10:35:32 情景: 你想通过在当前的URL中记录来源页面的URL,以便处理完请求后再跳转回来源页: http://www.example1.com/refer/http: ...
- apache使用.htaccess文件中RewriteRule重定向后,URL中的加号无法解析
今天在使用.htaccess做伪静态的时候,发生一件怪事,URL里存在C++时会有问题,在处理C++这个词的时候,无论如何,$_GET都得不到++,只能得到C空格. 一开始我以为是没用urlencod ...
- javaWeb项目中的路径格式 请求url地址 客户端路径 服务端路径 url-pattern 路径 获取资源路径 地址 url
javaweb项目中有很多场景的路径客户端的POST/GET请求,服务器的请求转发,资源获取需要设置路径等这些路径表达的含义都有不同,所以想要更好的书写规范有用的路径代码 需要对路径有一个清晰地认知 ...
- 复制vmware中的centos后无法上网问题
复制vmware中的centos后无法上网问题 查看IP命令 ip addr 网卡信息 eth1: mtu 1500 qdisc pfifo_fast state UP qlen 1000 使用的是e ...
- javaWeb中的/路径问题
在写javaweb的时候,在写路径的时候,/有时候表示站点根目录,有时候表示当前web应用根目录,究竟如何区分呢? 首先,我们建议开发的时候,跳转之类的都是用绝对路径(注意:不是物理路径),而不是使用 ...
- Windows环境下redis 配置文件中设置的密码无效
当我们安装了redis服务后,发现在其配置文件redis.windows.conf(或redis.conf)设置了密码:requirepass ****** 但是打开redis-cli.exe后输入命 ...
- AWS中国EC2 公网IP登录免pemKEY修改shh 配置文件
个人使用记录 1:KEY 授权 chmod 400 VPN.pem 2:连接 ssh -i "VPN.pem" ubuntu@ec2-54-183-119-93.us-west-1 ...
- MySQL在windows系统中修改datadir路径后无法启动问题,报错1067
windows server2008下如何更改MySQL数据库的目录的帖子已经很多了,这里简单介绍一个步骤,如果不成功请先查看其它帖子. 更改默认的mysql数据库目录 将 C:\Documents ...
随机推荐
- Mysql表创建外键报错
数据库表A: CREATE TABLE task_desc_tab ( id INT(11) PRIMARY KEY NOT NULL COMMENT '自增主键' AUTO_INCREMENT, t ...
- windows下mysql和linux下mysql主从配置
1. linux下mysql安装版本5.6 windows下mysql版本5.7 不要问我为什么版本不一致 就是想这么搞 2. linux为主服务器 windows为从服务器 3.找到li ...
- 分析占用了大量CPU处理时间的java进程中的进程
分析占用了大量 CPU 处理时间的是Java 进程中哪个线程 下面是详细步骤: 1. 首先确定进程的 ID ,可以使用 jps -v 或者 top 命令直接查看 2. 查看该进程中哪个线程占用大量 C ...
- Docker技术入门与实战 第二版-学习笔记-5-容器-命令及限制内存与cpu资源
1.启动容器 启动容器有两种方式: 基于镜像新建一个容器并启动 将在终止状态(stopped)的容器重新启动 1)新建并启动——docker run 比如在启动ubuntu:14.04容器,并输出“H ...
- java字符串利用dom4j转 xml 且遍历
1.因为转换的格式不是标准格式,所以有时候获得xml根目录后rootElement.attributes() 取不到想要的属性 所以需要通过迭代器来获取想要的值 public static void ...
- 如何利用Grunt生成对应的Source Map文件,线上代码压缩使用chrome浏览器便于调式
如何利用Grunt生成对应的Source Map文件,线上代码压缩使用chrome浏览器便于调式 首先我们来说说为何要生成sourceMap文件呢?简单的说,sourceMap是为了压缩后的代码调式提 ...
- extern C的用法解析
1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同.作为一种欲与C兼容的语言,C++保留了一部分过程式语 ...
- DC-DC Controllers Use Average-Current-Mode Control for Infotainment Applications-3939
DC-DC Controllers Use Average-Current-Mode Control for Infotainment Applications Abstract: Auto info ...
- Loopback接口用途---用作管理地址。
Loopback接口的优点是永远不会down点,不管是链路断开还是网卡损坏.因而loopback接口有很高健壮性. 但是loopback并非实际网口,外部设备要与该口通信,必须经过实际口的路由实现. ...
- tomcat-在eclipse中配置tomcat容器的内存
eclipse下的tomcat内存设置大小 在eclipse中设置: 设置步骤如下: 1.点击eclipse上的debug图标旁边的下拉箭头 2.然后选择Run Configurations, 3.系 ...