apache服务及其管理

来源:互联网 发布:淘宝美伢抄袭 编辑:程序博客网 时间:2024/06/01 21:56
apache

一、关于 apache

         Apache HTTPServer(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中,它是企业常用的web服务,用于提供http://(超文本传输协议)


二、apache的安装部署

1、yum install httpd -y


yum install httpd-manual(手册)

2、关闭防火墙,打开http服务并设置开机自启

systemctl start httpd
systemctl enable httpd
systemctl stop firewalld

systemctl disable firewalld


3、测试  http://172.25.254.200


http:172.25.254.200/manual



三、 apache的基础信息

主配置目录  :  /etc/httpd/conf
主配置文件: /etc/httpd/conf/httpd.conf
子配置目录: /etc/httpd/conf.d
子配置文件: /etc/httpd/cong.d/*.conf
默认发布目录 : /var/www/html
默认发布文件: index.html
默认端口:  80
默认安全上下文: httpd_sys_content_t
程序开启默认用户: apache
apache日志 : /etc/httpd/logs/*

四、apache的管理
1、修改默认端口  
vim /etc/httpd/conf/httpd.conf

43 Linsten 8020 修改默认端口为8020


systemctl  restart httpd

打开浏览器,测试http://172.25.254.200,会显示连接不上

 

http://172.25.254.200:8020    加上更改之后的8020端口连接成功


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

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

(1)首先进入/var/www/html

vim  index.html

<h1>welcome</h1>

vim test.html

<h1>test'page</h1>

(2)编辑主配置文件,设置默认发布文件

vim /etc/httpd/conf/httpd.conf

164 DirectoryIndex index.html text.html   当index.html不存在时访问text.html


(3)效果:

默认文件index.html

rm -rf index.html 删除index.html后哦,默认发布文件变成了test.html


3、修改默认发布目录
120 DocumentRoot "/www/html"
121 <Directory "/www">
                 Require all granted

123 </Directory>



semanage fcontext -a -t httpd_sys_content '/www(/.*)?' 添加安全上下文

restorecon -RvvF /www/ 刷新安全上下文

为了清楚地看到效果,建立目录mkdir /www/html -p

在该目录下编写文件 vim /www/html/index.html

测试172.25.254.200


4、apache的虚拟主机

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

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

vim /var/www/virtual/linux.westos.com/html/index.html

<h1>linux.page</h1>

vim /var/www/virtual/java.westos.com/html/index.html

<h1>java.page</h1>


(1)vim /etc/httpd/conf.d/adefaukt.conf 默认访问目录

<VirtualHost _default_:80>
        DocumentRoot "/var/www/html"
        CustomLog "logs/www.westos.com.log" combined
</VirtualHost>

(2)vim /etc/httpd/conf.d/linux.conf
<VirtualHost *:80>
        ServerName linux.westos.com   指定站点名称
        DocumentRoot "/var/www/virtual/linux.westos.com/html/"     站点默认发布目录
        CustomLog "logs.westos.com.logs" combined        站点日志combined标示四种日志类别
</VirtualHost>
<Directory "/var/www/virtnal/linux.westos.com/html">
        require all granted

</Directory>

(3)vim /etc/httpd/conf.d/java.conf

<VirtualHost *:80>
        ServerName java.westos.com
        DocumentRoot "/var/www/virtual/java.westos.com/html/"
</VirtualHost>
<Directory "/var/www/virtual/java.westos.com/html/">
        Require all granted
</Directory>

测试
在测试主机中修改本机解析文件
vim /etc/hosts

172.25.254.200  linux.westos.com  java.westos.com

打开火狐浏览器测试





5、 apache内部的访问控制
     <Diretory “/var/www/html/test”>
                 Order allow deny --列表读取顺序,后读取的覆盖先读取的内容
                 Allow  from all 
                 Deny  from 172.25.254.68

</Diretory>

测试:




2 用户方式的访问控制
htpasswd -cm /etc/httpd/userpass admin

htpasswd -m /etc/httpd/userpass admin1  添加新的认证用户(后面不用加c,-cm会把之前添加的覆盖掉)

vim /etc/httpd/conf.d/adefault.conf
<Directory "/var/www/html/admin">
   AuthUserFile /etc/httpd/userpass
   AuthName "Please input your name and password"
   AuthType basic
   Require user admin 针对用户admin

   #Require vaild-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.100/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/cgi/index.cgi      写一个输出当前时间的cgi语言脚本


chmod +x /var/www/html/cgi/index.cgi      给赋予可执行权限

执行脚本看是否正常:


systemctl restart httpd.service
测试:



7、 https

让默认的http自动跳转到https中

默认端口:443

yum install crypto-utils.x86_64 -y
yum install mod_ssl.x86_64
获去证书和钥匙:
genkey www.westos.com



注意下一步需要打开server,随意敲一些东西,进度条才会动





查看证书:


https的转换:

301 临时转换

302 永久转换

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

vim  /var/www/virtual/login.westos.com/html/login.westos.com/index.html

vim /etc/httpd/conf.d/login.conf


测试:http://172.25.254.200自动跳转到https...


##end##