LOADING STUFF...

liunx系统——apache网站服务器

–>

一.Apache的基础简介

阿帕奇用来提供超文本传输协议:http://
阿帕奇的基础信息
主配置目录: /etc/httpd/conf
主配置文件: /etc/httpd/conf/httpd.conf
子配置目录: /etc/httpd/conf.d/
子配置文件: /etc/httpd/conf.d/*.conf ## 在子配置目录中所有的以.conf结尾的文件
默认发布目录: /var/www/html
默认发布文件: /var/www/html/index.html ##默认发布目录中index.html文件名称固定
默认端口: 80

二.阿帕奇的安装与测试

前提条件:在阿帕器服务器安装前必须保证强制和级selinux处于开启状态,yum源正常,火墙处于打开状态

[[email protected] ~]# getenforce 
Enforcing             打开selinux
[[email protected] ~]# yum install httpd.x86_64  -y            下载httpd网络
[[email protected] ~]# yum repolist                    查看yum源正常
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
repo id                                            repo name                                       status
xoxo                                               xoxo                                            5,152
repolist: 5,152
[[email protected] ~]# systemctl start firewalld             打开防火墙
[[email protected] ~]# systemctl start httpd.service 			开启httpd服务
[[email protected] ~]# systemctl enable  httpd.service 
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
[[email protected] ~]# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens33
  sources: 
  services: ssh dhcpv6-client
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 
 
[[email protected] ~]# firewall-cmd --permanent --add-service=http             将httpd服务永久加在火墙上 
success
[[email protected] ~]# firewall-cmd --reload             重启服务
success

apache默认端口的修改

  • 修改http端口时分为两种情况,一种是修改为本身允许存在的端口;另一种是修改为不存在的端口
1 默认端口为80
[[email protected] ~]# netstat -antlupe  | grep httpd
tcp6       0      0 :::80                   :::*                    LISTEN      0          86593      21180/httpd       
2 修改端口为8080
[[email protected] html]# cd /etc/httpd/conf        这个是主配置文件的目录
[[email protected] conf]# vim httpd.conf  编辑端口

[[email protected] conf]# systemctl restart  httpd.service           重启httpd服务
[[email protected] conf]# netstat -antlupe  | grep httpd         查看端口已经更改为 8080
tcp6       0      0 :::8080                 :::*                    LISTEN      0          145682     69786/httpd         

3 修改默认端口为6666

文件修改默认端口

[[email protected] conf]# vim httpd.conf 
\[[email protected] conf]#systemctl restart httpd.service 

[[email protected] conf]# semanage port -a -t http_port_t  -p  tcp 6666        给这个端口强制加6666 的这个端口
[[email protected] conf]# getenforce         查看selinux级别
Enfo[[email protected] conf]# firewall-cmd --add-port=6666/tcp          给防火墙上加载6666的这个端口,让防火墙识别可以通过
success
[[email protected] conf]# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens33
  sources: 
  services: ssh dhcpv6-client http
  ports: 8080/tcp 6666/tcp               查看到是已经有了6666的这个端口
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: rcing
[[email protected] conf]# semanage port -l | grep http
http_cache_port_t              tcp      8080, 8118, 8123, 10001-10010
http_cache_port_t              udp      3130
http_port_t                    tcp      6666, 80, 81, 443, 488, 8008, 8009, 8443, 9000          查看6666这个的端口添加成功
pegasus_http_port_t            tcp      5988
pegasus_https_port_t           tcp      5989
测试

在浏览器中查看

第一次没有加端口的情况是不能查看的

第二次加了 6666端口就可以查看了

apache默认发布目录的修改

  • 环境配置
    将的默认端口改为 vim /etc/httpd/conf/httpd.conf Listen 80 wq退出保存
 systemctl restart httpd  重启服务

更改

[[email protected] conf]# cd /var/www/html/
[[email protected] html]# ls
index.html
[[email protected] html]# vim test    编辑新的文件
[[email protected] html]# cat test    
<h1>lucky boy</h1>
在firefox 浏览器上搜素查看

  • 查看到是之前的发布内容,是因为编辑的新内容在原来的发布顺序后边,所以导致看不到
  • 更改发布顺序
[[email protected] html]# vim /etc/httpd/conf/httpd.conf          更改发布顺序

[[email protected] html]# systemctl restart httpd.service

  • 重新查看之后显示的就是test 里边的发布内容
更改默认的发布目录
更改发布目录就需要建立一个新的默认发布目录
[[email protected] ~]# mkdir /kk/pp  -p				建立新的目录
[[email protected] ~]# semanage fcontext -a -t httpd_sys_content_t  '/kk/pp(/.*)?'			因为是开启了selinux 的,所以要强制改变该目录的安全上下文,才可以变为默认的发布目录
[[email protected] ~]# restorecon -FvvR /kk/					刷新才可以正式的改变目录
restorecon reset /kk context unconfined_u:object_r:default_t:s0->system_u:object_r:default_t:s0
restorecon reset /kk/pp context unconfined_u:object_r:default_t:s0->system_u:object_r:httpd_sys_content_t:s0
[[email protected] ~]# ls -Zd  /kk/pp
drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 /kk/pp     				查看是该目录的安全上下文与原文已经一样
[[email protected] pp]# vim index.html        编辑默认发布默认里边的发布内容
[[email protected] pp]# cat  index.html
<h1>huan ying lai dao zhong guo</h1>
[email protected] ~]# vim /etc/httpd/conf/httpd.conf      修改主配置文件 

[[email protected] ~]# systemctl restart httpd.service    重启
测试:

apache内部的访问控制

1、针对与主机的访问控制(使用IP的情况下)
[[email protected] ~]# vim /etc/httpd/conf/httpd.conf     编辑文件内容

[[email protected] ~]# systemctl restart httpd.service  		重启服务
测试:

用192.168.100.180这个主机访问,访问不到
用其他的主机访问这个就可以正常访问的

2 针对用户之间的访问控制使用情况

创建新的用户
[[email protected] httpd]# htpasswd  -cm .koko  admin       创建新的用户 并且输入密码
New password: 
Re-type new password: 
Adding password for user admin
[[email protected] httpd]# htpasswd  -m .koko  admin1         第二此创建新的用户 不需要加  C 直接 -m  就可以的
New password: 
Re-type new password: 
Adding password for user admin1

编写文件

[[email protected] httpd]# vim /etc/httpd/conf/httpd.conf

systemctl restart httpd.service重启服务
  • 测试端:

允许用户和密码中的就是可以登陆

本文来源 互联网收集,文章内容系作者个人观点,不代表 本站 对观点赞同或支持。如需转载,请注明文章来源,如您发现有涉嫌抄袭侵权的内容,请联系本站核实处理。

© 版权声明

相关文章