apache

来源:互联网 发布:linux修改nice值 编辑:程序博客网 时间:2024/05/16 11:00

######################

###### apache ########

######################

 

##1.apache

#企业中常用的web服务,用来提供http://(超文本传输协议)

 

##2.apache的安装部署

yum install httpd -y

yum install httpd-manual.noarch -y

systemctl stop firewalld

systemctl disabled firewalld

systemctl start httpd

systemctl enable httpd

 

##3.apache的基础信息

#主配置目录: /etc/httpd/conf

#主配置文件: /etc/httpd/conf/http.conf

#子配置目录: /etc/http/conf.d

#子配置文件: /etc/httpd/conf.d/*.conf

#默认发布目录: /var/www/html

#默认发布文件: index.html

#默认端口: 80

#默认安全上下文: httpd_sys_content_t

#程序开启默认用户:apache

#apache日志: /etc/httpd/logs/*

 

#修改默认端口:

vim /etc/httpd/conf/httpd.conf

43  Listen 8080  #修改默认端口为8080

 

#修改默认发布文件:

默认发布文件就是访问apache时没有指定文件名称时默认访问的文件

这个文件可以指定多个,有访问顺序

在/var/www/html目录下建立index.html文件并写入172.25.254.160/index.html,及test.html文件并写入172.25.254.160/test.html 

vim /etc/httpd/cong/httpd.conf


DirectoryIndex index.html  test.html  表示当index.html不存在时访问test.html

 删除index.html后在访问就会访问到test.html文件



#修改默认发布目录:

在根目录下建立/www/index.html写入/www/index.html,当修改默认发布目录后再访问时,应该访问到/www/index.html

vim /etc/httpd/conf/httpd.conf


semanage fcontext -a -t httpd_sys_content_t '/www(/.*)?'


storecon -RvvF /www/

systemctl restart httpd 


##4,apache的虚拟主机

建立虚拟主机的发布目录

mkdir -p /var/www/virtual/c.westos.com/html


vim /etc/httpd/conf.d/adefault.conf



vim /etc/httpd/conf.d/c.conf


ServerName c.westos.com          #指定站点名称

        DocumentRoot "/var/www/virtual/c.westos.com/html"   #站点默认发布目录

        CustomLog "logs/c.westos.com.logs" combined   #站点日志combined表示四种日志的集和

 

测试:

在测试主机中做好本地解析

vim /etc/hosts

172.25.254.32 linux.westos.com

 

##5.apache内部的访问控制

#1.针对与主机的访问控制

  Order deny,allow         ##列表的读取顺序,后读取的列表会覆盖先读的列表内容里重复部分

 

 因为拒绝了172.25.254.60的访问所以只能看到apache的测试页面

 

 

#2.针对用户的访问控制


htpasswd -cm /etc/httpd/userpass admin

htpasswd -m /etc/httpd/userpass admin1

 

vim /etc/httpd/adefault.conf


        Require user admin    #只有admin用户可以登陆

        Require valid-user    #合法用户都可以登陆


 

##6.apache支持的语言

1.html

 

2.php

vim /var/www/html/index.php

<?php

phpinfo();

?>

 

yum install php -y

systemctl restart httpd

测试

172.25.254.32/index.php

 

3.cgi

mkdir -p /var/www/html/cgi

semanage fcontext -a -t httpd_sys_script_exec_t '/var/www/html/cgi(/.*)?'    #修改安全上下文

restorecon -RvvF /var/www/html/cgi

 

vim /var/www/html/index.cgi

 

chmod +x /var/www/html/cgi/index.cgi

/var/www/html/cgi/index.cgi


vim /etc/httpd/conf.d/adefault.conf


测试

172.25.254.232/cgi/index.cgi

 

##7.https

yum install mod_ssl.x86_64 -y

yum install crypto-utils -y

 

genkey www.westos.com      然后根据自己的需要一步步完成证书的制作



vim /etc/httpd/conf.d/ssl/conf



测试

https://172.25.254.132

 

##8.强制用户加密访问

 

vim /etc/httpd/login.conf


 

^(/.*)$ ##客户在浏览器地址栏中的输入

https:// ##强制客户加密访问

%{HTTP_HOST} ##客户请求主机

$1 ##"$1"表示^(/.*)$的值

[redirect=301] ##临时重写   302永久转

 

通过自己做的实验总结出在做apache的配置时起码要注意到:

    1.在做之前要知道自己要做什么样的配置,思路清楚。

    2.防火墙策略一定要写或者关闭防火墙。

    3.建立虚拟主机时要给它建立匹配的发布目录。

    4.每次修改完配置文件后一定要重启服务,否则配置不会生效。

    5.在测试是要做好本地解析工作。

    6.注意selinux的状态,若是enforcing,要注意建立的目录文件的安全上下文。

原创粉丝点击