基于Linux下的apache(web服务器)

apache简介

         Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python解释器编译到服务器中。企业中常用的web服务,用来提供http://(超文本传输协议)。

Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache是自由软件,所以不断有人来为它开发新 的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。本来它只用于小型或试验Internet网络,后来逐步扩充到各种Unix系统中,尤其对Linux的支持相当完美
  
Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支,不太适合于多处理器环境,因此,在一个Apache Web站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。到目前为止Apache仍然是世界上用的最多的Web服务器,世界上很多著名的网站 都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、 Windows、Linux系统平台上)以及它的可移植性等方面。

Web服务器(Web Server)
Web服务器可以解析(handles)HTTP协议。当Web服务器接收到一个HTTP请求 (request),会返回一个HTTP响应(response),例如送回一个HTML页面。为了处理一个请求(request),Web服务器可以响 应(response)一个静态页面或图片,进行页面跳转(redirect),或者把动态响应(dynamic response)的产生委托(delegate)给一些其它的程序例如CGI脚本,JSP脚本,servlets,ASP(Active Server Pages)脚本,服务器端(server-side)JavaScript,或者一些其它的服务器端(server-side)技术。

apache的基本信息

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

apache的安装部署

[root@shareserver ~]# yum install httpd -y                    ##安装apache软件

[root@shareserver ~]# yum install httpd-manual -y      ##安装apache手册

[root@shareserver ~]# systemctl start httpd                 ##开启服务

[root@shareserver ~]# systemctl enable httpd             ##设定服务开机自启

[root@shareserver ~]# firewall-cmd --list-all                 ##列出火墙信息,查看火墙允许的服务

[root@shareserver ~]# firewall-cmd --permanent --add-service=http  ##火墙永久允许http服务

[root@shareserver ~]# firewall-cmd --reload                    ##重新加载火墙服务

[root@shareserver ~]# netstat -antlupe | grep httpd         ##查看http的端口

添加防火墙永久允许的服务也可以通过在web界面可以对防火墙进行设置

[root@shareserver ~]# firewall-config     打开防火墙web管理工具

配置分为两种runtimepermanent
 runtime表示当前运行生效,当前设置的参数,当系统重启之后就会失效
 permanent表示永久生效,设置的参数永久生效,但是在完成设置之后,必须重新载入防火墙,

zone表示选择的区域
选择区域之后,选择这个区域的服务,可以添加协议和端口

选择完要添加的服务之后,点击页面左上角的Options-->Reload Firewalld设置就生效了。

 

编辑测试所用的默认发布文件:

[root@shareserver html]# vim /var/www/html/index.html

    <h1>hello westos</h1>

测试:

http://172.25.254.100                               ##访问apache发布文件

http://172.25.254.100/manual                 ##访问apache手册

修改apache的基础信息

(1)修改默认端口:

查看当前允许的httpd端口:

[root@shareserver ~]# semanage port -l | grep http

将apache默认端口改为当前允许的端口,如8080时,进行的配置如下:

[root@shareserver html]# vim /etc/httpd/conf/httpd.conf            ##编辑主配置文件

   42 Listen 8080                            ##将默认的80端口改为另一个允许的httpd端口8080

[root@shareserver html]# firewall-cmd --permanent --add-port=8080/tcp            ##防火墙永久开启该端口的服务

[root@shareserver html]# firewall-cmd --reload    

[root@shareserver html]# systemctl restart httpd                  ##重启apache服务

测试:

在浏览器中输入:http://172.25.254.100:8080         ###这里的端口已经不是默认的了,需要指定端口为8080

将apache默认端口改为非标准端口,需要进行如下配置:

[root@shareserver ~]# semanage port -a -t http_port_t -p tcp 6666    ##将非标准端口6666添加到当前允许的httpd端口中

[root@shareserver html]# vim /etc/httpd/conf/httpd.conf            ##编辑主配置文件

   42 Listen 6666                            ##将默认的80端口改为另一个允许的httpd端口6666

[root@shareserver ~]# firewall-cmd --permanent --add-port=6666/tcp           ##防火墙永久开启该端口的服务

[root@shareserver html]# firewall-cmd --reload    

[root@shareserver html]# systemctl restart httpd                  ##重启apache服务

测试:

在浏览器中输入:http://172.25.254.100:6666       ###指定端口为6666

实验完成后重新将默认端口改为80,以免影响之后的实验。

(2)修改默认发布文件:

默认发布文件就是访问apache时没有指定文件名称时默认访问的文件
这个文件可以指定多个,有访问顺序

root@shareserver html]# vim /var/www/html/westos.html        ##在默认发布目录下面重新建立一个发布文件westos.html

<h1>westos's page</h1>

[root@shareserver ~]# vim /etc/httpd/conf/httpd.conf                 ##修改主配置文件

163 <IfModule dir_module>
164     DirectoryIndex westos.html index.html         ##多个默认发布文件,有顺序之分,当westos.html不存在时,访问index.htmll

165 </IfModule>

 

测试:

在浏览器中输入:http://172.25.254.100,显示westos.html发布文件里面的内容

 

(3修改默认发布目录:

[root@shareserver /]# mkdir /myhtml/web/html -p            ##新建一个目录,修改此目录作为apache的默认发布目录

[root@shareserver /]# vim /myhtml/web/html/my.html      ##在此目录下面新建一个发布文件my.html 

<h1>myhtml's page</h1>                                      ##编辑发布文件的内容

[root@shareserver /]# semanage fcontext -a -t httpd_sys_content_t '/myhtml(/.*)?'       ##将该目录及其内容的安全上下文改为apache默认的安全上下文

[root@shareserver /]# restorecon -RvvF /myhtml/             ##刷新,使修改的默认上下文生效

[root@shareserver /]# vim /etc/httpd/conf/httpd.conf         ##修改主配置文件

119 #DocumentRoot "/var/www/html"                               ##注释原默认发布目录
120 DocumentRoot "/myhtml/web/html"                           ##指定新的默认发布目录
121 <Directory "/myhtml/web/html">                                 ##对该目录授权
122         Require all granted                                             ##任何人都可以访问该目录
123 </Directory>

167 <IfModule dir_module>
168     DirectoryIndex my.html westos.html index.html      ##将新建的发布文件my.html添加到默认发布文件里
169 </IfModule>

[root@shareserver /]# systemctl r

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值