Apache-最好用的web服务器
Posted 爱上资源
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Apache-最好用的web服务器相关的知识,希望对你有一定的参考价值。
Apache-最好用的web服务器
简介
Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。我们有的时候也把Apache叫做httpd服务器软件。
官网:http://httpd.apache.org/
常用软件分类
Apache:目前世界排名第一的,特点:历史悠久、安全、稳定、支持的功能模块较多。
nginx:最近几年刚刚流行的一款高性能、高并发的web服务器软件,由一个俄罗期人开发。其变形的产品还有tengine、openresty。
IIS:微软出的WEB服务器,只能运行在windows上。
Tomcat:java使用这个。
lighttpd
软件下载
安装
apache软件安装
双击安装软件
点击下一步
同意条款
继续下一步
填写域名和邮箱信息
典型安装,继续下一步
使用默认的安装目录
确认安装
确认完成
成功安装后,在右下角出现绿色的图标
说明:如果是绿色,则代表成功安装。在浏览器中输入【localhost】,如果看到下面的信息,代码我们已经在浏览我们电脑上的网页了。
如果不是绿色,则说明启动出了问题。
安装常见错误
中文路径
安装apache的目录中请确保没有中文。
之前安装过web服务器软件
如果之前安装过apache或者其他web服务器那么请删除之前安装的或者关闭之前安装的web服务器否则会占用80端口导致启动失败。
VC++库缺少
如果出现安装过程中出现这样的信息(原因:电脑中缺少vc++的运行库)
解决办法:需要根据自己电脑的位数【32位|64位】下载以下软件安装:
Windows10 IIS服务占用80端口
如果是win10系统,部分的win10会自动启动IIS服务器占用了80端口,导致apache无法启动,解决办法是打开服务窗口并关闭IIS服务器。
打开服务窗口windows + r --> services.msc
找到“WorldWide Web Publishing Service”,双击打开后,将启动类型改为手动,更改服务状态为“停止。
如果80端口仍然被占用,则还需要停止以下几个服务:
SSDP Discovery
Print Spooler
HomeGroup Provider
Function Discovery Resource Publication
Function Discovery Provider Host
软件的启动与关闭
鼠标左键点击绿色小光标
选择启动、关闭、重启
说明:当选择关闭后,图标变成红色
配置文件
配置文件的位置
apache的工作行为都是可以通过配置文件来配置的,配置文件的名字是:httpd.conf,默认安装的apache保存在apache的安装目录的config目录下:
注意:apache配置文件中的内容不能随意修改,如果出现错误,将导致apache无法启动。
说明:如果修改了配置文件必须要重新启动一下才能生效。
注释
注意:在配置文件中的#开头的行都注释的意思,这些内容不影响配置文件的工作,只是为了方便人类做记录使用。所有不是# 开头就是有效的配置项了。
端口号
apache默认使用80端口号,也可以修改:
说明:如果修改了端口号,那么在访问时需要在浏览器中输入:http://域名:端口号/访问的文件
网站根目录
网站根目录指的是存放该网站所有网页的目录。
当我们在浏览器中访问一个文件时,比如:要访问a.html,那么apache会到配置文件中设置的网站根目录中去找这个文件。
也就是说,我们写的代码都要放到网站根目录下,才能被浏览器访问。
说明:这个目录是可以修改的,如果修改了请确保修改的目录已经存在,否则启动apache会失败!
访问权限
修改http.conf文件的DocumentRoot项
重启apache
当我们修改了网站根目录之后再访问会提示以下页面【无权访问】
这时我们需要修改apache配置文件中的权限设置:
建议:没有特殊需求不用改网站根目录。
访问权限控制
权限练习:配置自己的apache,并且可以让别人通过浏览器查看你电脑上的网站,同理也看看别人电脑上的网站。
访问时只写域名不写文件名时的情况
如果用户没有写要访问的文件会出现什么情况?
如果用户访问网站时只输入了域名,没有指明要访问的文件。这时apache会怎样?比如用户访问:http://localhost,这时会有三种情况:
这个时候apache会先在网站根目录查找有没有index.html,如果有则显示这个文件,如果没有则查找test.html。哪个文件写在前面就找哪个,找到就停止,并返回给用户。
说明:找到第一个文件就直接返回了,就不再找后面的了,然后可以修改这些文件多个文件用空格隔开,apache会依次从左向右找。
情况一-配置DirectoryIndex
如果配置了DirectoryIndex,那么apache会自动找这个配置的文件
根据以上配置会先找index.html 如果没有再找test.html .......
扩展:如果以上几个配置文件都没有找到怎么办?就要看以下的情况了:
情况二-配置Indexes
如果配置DirectoryIndex没有找到,那么再看有没有配置Options后面是否有indexes,
如果有:会列出这个网站根目录下所有的文件。
情况三-没配置Indexes
如果没有
显示无权访问:
如果要访问必须写出明确的文件名:
高级用法
虚拟主机简介
我们的电脑不可能为一个网站服务,那么如何提供多个服务呢?
答:可以安装多个web服务器软件,监听不同的端口。
通过上面的方式可以达到目的,但是安装多个软件,则会造成管理上的麻烦,则我们是否可以在一台电脑只安装一个apache服务,提供多个网站服务呢?
答:可以使用apache提供的虚拟主机服务。
虚拟主机配置
修改httpd.conf文件,开启mod_vhost_alias.so模块
修改httpd-vhosts.conf文件,增加如下信息
<VirtualHost *:80> # 配置网站根目录 DocumentRoot "D:/soft/vhost1" # 配置域名 ServerName local.vhost1.com # 配置默认的首页 DirectoryIndex index.html index.htm
# 配置虚拟主机目录的权限 <Directory "D:/soft/vhost1"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> </VirtualHost> |
修改系统的hosts文件,增加一行如下信息
浏览器访问效果
以上是关于Apache-最好用的web服务器的主要内容,如果未能解决你的问题,请参考以下文章