您的位置:首页 > 运维架构 > Apache

LAMP之Centos6.5安装配置Apache(二)

2018-01-08 23:42 267 查看
上一篇已经给大家介绍了如何安装apache,这次我们来看看如何更好的使用apache。

一.对客户机地址限制.
修改主配置文件httpd.conf中的目录区域<Directory 目录位置>......</Directory>



通过配置项order,deny from ,allow from根据主机名或IP地址决定是否可以访问
order 配置项可以设置为allow,deny或deny,allow决定允许.拒绝策略的先后顺序:
allow,deny 先允许后拒绝,默认拒绝所有未明确允许的客户机地址
deny,allow先拒绝后允许,默认允许所有未明确允许的客户机地址
如上图,对所有客户机开放 若仅允许IP为192.168.1.1的访问可以修改为
order allow,deny
allow from 192.168.1.1
若只拒绝一部分客户机访问可以改为
order deny,allow
deny from 192.168.0.0/24 192.168.1.0/24
上面的设置方法可以拒绝192.168.0.0,192.168.1.0网段的客户机访问



:wq保存退出重启httpd服务


用客户机访问拒绝访问



二.用户授权限制
httpd支持摘要认证(digest)和基本认证(basic),使用摘要认证在编译之前加“--enable-auth-digest”选项,但并不是所有浏览器都支持摘要认证,所以这里演示基本认证的用户授权限制
1.创建用户认证数据文件
2.
使用htpasswd工具进行创建,结合-c表示新创建此文件





省略-c表示用户数据文件已经存在,用于添加新用户或修改现有用户密码





修改httpd.conf 只允许网站管理员的计算机登陆
authname :定义名称
authtype:设置认证类型 ,basic为基本认证
authuserfile : 指定保存用户账号的文件路径
require valid-user:只有认证文件中的合法用户才能访问 也可以指授权给单个用户require user zhangsan



保存退出 , 重启httpd服务





可以成功访问
三.构建虚拟web主机
虚拟web主机是在一个httpd服务上运行多个web站点,充分利用硬件资源,大大降低网站构建及运行成本。有三种方式构建:
①基于域名②基于IP③基于端口
1.配置基于域名的虚拟主机
创建不同的网站目录及测试网页



apache有单独的虚拟主机配置文件httpd-chosts.conf 分为3部分
监听地址:各虚拟主机的IP地址
虚拟主机区域:<virtualhost 监听地址>.....</virtualhost>
每一个虚拟主机用一组<virtualhost 监听地址>.....</virtualhost>,一组相当于一个httpd.conf主配置文件
目录权限:使用<directory 目录位置>......</directory>区域配置为每一个虚拟主机设置目录访问权限,其目录权限可以继承父文件夹的授权许可,可简化配置



在<virtualhost 监听地址>.....</virtualhost>中间也可以加入<directory 目录位置>......</directory>配置区域类似httpd.conf中的



开启httpd.conf中的虚拟主机选项 去掉Include前的注释符 启用



重启httpd服务
客户机访问成功


2.基于IP地址的虚拟主机
复制eth0设备文件为eth0:0,并修改


需修改设备名和IP地址



重启网卡服务


修改httpd-vhosts.conf文件



重启httpd服务 客户机访问成功



3.基于端口
修改httpd-vhosts.conf文件更改端口 删除监听地址



修改httpd.conf添加监听端口



重启httpd服务
查看端口netstat -anpt



三种虚拟主机部署方式最好别同时使用,因为其区分机制不同,经博主亲测,会导致服务失败。

下面给大家介绍一种简单实用的远程共享存储方式nfs,nfs是一个基于tcp/ip传输的网络文件系统协议,用于linux主机之间提供网络共享,最初有SUN公司开发,nfs也是NAS存储设备支持的一种协议,
1.在另一台linux服务器上安装rpcbind 和nfs-utils
nfs-utils用于提供nfs共享服务,rpcbind用于rpc支持
这里已经安装好了,并启动



创建目录及测试文件


发布共享目录 vim /etc/exports
rw表示可读可写 可改为ro只读 sync 表示同步写入 no_root_squash 表示以root用户访问时赋予本地权限(默认是root_squash,将作为nfsnobody降权对待)
将一个目录共享给多台客户机时,分配不同的权限时,中间用空格区分,例:
/var/rhel 192.168.1.20(ro) 192.168.1.10(rw)



启动rpcbind nfs showmount -e 查看



在apache服务器上查询



这时可以挂载到本地了 永久挂载 vim /etc/fstab
添加



mount -a 重新挂载/etc/fstab中的目录



这时可以访问了



成功能访问到nfs服务器
其实nfs最常用的场合是作为负载均衡群集,以后都会给大家一一介绍,还有功能更加丰富的mfs,。
下篇预告:apache 和还可以和MySQL PHP一起组成lamp平台,下一篇我们来学习一下MySQL的搭建及简单的sql语句应用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  apache 访问控制 NFS