搭建web服务器

        服务器:(提供服务)指的就是一台安装了特定软件的公共计算机,专门用于提供特定的服务,按照服务类型的不同,又分为web服务器、数据库服务器、文件服务器等。
        我们手头上的电脑都可以是一台服务器,因为服务器是一个相对的概念,只要能提供服务就可以是一个服务器。
        客户端:(使用服务)指的是一次服务过程中使用这个服务的设备(网络端点),目前最常见的客户端就是浏览器。
web服务器软件
Nginx----------------反向代理
Apache-------------PHP
IIS--------------------ASP.NET
Tomcat-------------Java

安装Apache

  1. 在官网上下载并解压https://www.apachelounge.com/download/

  2. 进入到bin目录找到httpd.exe文件,以管理员身份打开命令行,执行安装此文件
    image.png

    此时会报一个错,根据提示找到相应的文件错误的地方,更改解压文件的路径
    image.png
    3.再次执行检查命令
    image.png
    还会有一个警告,此时回到对应文件,配置ServerName(这个地方忽略掉此警告也可以)
    image.png

    再次运行检查命令
    image.png
    4.启动服务
    image.png
    5. 打开浏览器,此时服务已成功启动
    image.png

配置Apache

监听端口

        监听端口可以随意修改为任意一个未被其他程序监听的端口,可以通过设置配置文件httpd.conf中的Listen指令后面的数字修改。这里Apache默认占的是80这个门。不仅仅可以占一个端口,也可以同时设置多个端口,写多个Listen命令就可以了。
image.png

        设置完之后记得重新启动一下服务,最好在启动之前用httpd -t命令测试一下,看是否有错误。

网站根目录

        网站根目录就是存放我们网站文件的最顶层目录,通常URL中域名后面的第一个斜线对应的就是网站根目录。
        默认文档指的是我们在访问某一个目录时,默认访问的文件就叫做默认文档。

注:
动态网站情况比较特殊,需要单独考虑,不一定是这个规则。

        默认Apache的网站根目录是安装目录中的htdocs文件夹,为了方便对网站文件的管理,一般我们会将其设置在一个自定义目录中,如果需要设置网站根目录,可以通过修改配置文件httpd.conf中的网站根目录选项切换。
image.png

        只要将这两个地方改成自己的文档文件夹就可以了,不要忘了重启服务。
image.png

默认文档

        当客户端访问的是一个目录而不是某个具体的文件时,服务端会默认返回这个目录下的某个文档,一般是index.html文档(为啥呢?看下面),这个文档就称之为默认文档。当然这个文档也可以设置的,同样在httpd.conf文件中
image.png

目录浏览

         同样在配置文件中,把下图中的indexes去掉就可以取消目录的浏览
image.png

虚拟主机

        如果一台机器上只有一个网站的话,只要配置好网站的根目录、默认文档等就可以使用了,但是如果想要在一台机器上部署多个站点,就必须通过配置虚拟主机的方式解决。

配置方法:

1. 在httpd.conf配置文件中找到Include conf/extra/httpd-vhosts.conf这一行,并把注释解除掉;

2. 然后对应上面的路径找到Apache的虚拟主机配置文件E:\apache\Apache24\conf\extra\httpd-vhosts.conf,添加虚拟主机配置节点,并重启Apache

配置一个虚拟主机,*:80指的是绑定任意当前机器IP的80端口;
ServerAdmin 站长邮箱
DocumentRoot 网站根目录
ServerName 域名
ServerAlias 别名(多个域名可以访问同一个网站)
ErrorLog 错误日志
CustomLog 普通日志


image.png

3. 在配置第二个虚拟主机的时候,要配置一下Directory,确定路径能被访问,否则会出现Forbidden的情况,不建议在httpd.conf文件中新增Directory节点,可以在配置虚拟主机的地方新增Directory的节点配置。第一个可加可不加,但一般都写上。
image.png
4. 最后记得重启一下Apache,还要记得去hosts文件中配置一下域名啊!!!
(一旦配置了虚拟主机,那么默认绑定到机器上的IP和localhost就不起作用了,都会直接请求第一个虚拟主机)

静态网站与动态网站

         通过上面的配置,客户端已经可以通过域名请求一个网站,Apache完成的事情就是找到请求对应的文件-à读取文件-à将文件内容相应给客户端浏览器(将文件原封不动的给客户端),无法满足让网页内容动起来的需求。服务端动态网页,实现这种概念的技术有:JSP,ASP.NET,PHP,Node等,这些技术的原理就是:不再将HTML固定写死,每次用户请求时,动态执行一段代码,临时生成一个用户想要的HTMl页面。

         动态网站指的就是每次请求时服务端动态生成HTML返回给用户的这种网站。
image.png

配置PHP

  1. 下载PHP安装包并解压
    http://php.net/downloads.php

  2. 在Apache的配置文件中配置php
    打开此文件E:\apache\Apache24\conf\httpd.conf,配置PHP:


    image.png
    image.png

Apache与PHP

         Apache是根据文件的扩展名找到文件的类型,然后挨个问一下每一个模块能否处理这个类型的文件,如果这些模块都不能处理,那么Apache就自己处理(按照静态文件的方式处理)。

你可能感兴趣的:(搭建web服务器)