• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 入门指南

    如果您对Apache HTTP Server完全陌生,甚至根本不运行网站,那么您可能不知道从哪里开始或要问什么问题。本文档将向您介绍基础知识。

    客户端,服务器和URL

    网络上的地址用URL(统一资源定位符)表示,URL指定一个协议(例如http),服务器名(例如www.apache.org),URL路径(例如/docs/current/getting-started.html)以及可能?arg=value用于将其他参数传递给服务器的查询字符串(例如)。服务器。

    客户端(例如Web浏览器)使用指定的协议连接到服务器(例如Apache HTTP Server),并使用URL路径请求资源。

    URL路径可以代表服务器上的任何事物。它可以是文件(如getting-started.html),处理程序(如server-status)或某种程序文件(如index.php)。我们将在下面的“网站内容”部分中对此进行更多讨论。

    服务器将发送一个响应,该响应由状态码和(可选)响应主体组成。状态代码指示请求是否成功,如果没有成功,则表明存在哪种错误情况。这告诉客户端应如何处理响应。您可以在HTTP Server Wiki中阅读有关可能的响应代码的信息。

    事务的详细信息以及任何错误情况都写入日志文件。下面在“日志文件和故障排除”部分中对此进行了更详细的讨论。

    主机名和DNS

    为了连接到服务器,客户端首先必须将服务器名称解析为IP地址-服务器在Internet上的位置。因此,为了使您的Web服务器可访问,服务器名必须在DNS中。

    如果您不知道如何执行此操作,则需要与网络管理员或Internet服务提供商联系,以执行此步骤。

    一个以上的主机名可能指向同一IP地址,并且一个以上的IP地址可以连接到同一台物理服务器。因此,您可以使用称为虚拟主机的功能在同一台物理服务器上运行多个网站。

    如果要测试不可通过Internet访问的服务器,则可以在主机文件中放置主机名,以便进行本地解析。例如,您可能想在主机文件中放置一条记录,以将请求映射www.example.com到本地系统,以进行测试。此项看起来像:

    127.0.0.1 www.example.com
    

    主机文件可能位于/etc/hostsC:\Windows\system32\drivers\etc\hosts

    您可以在Wikipedia.org/wiki/Hosts_(file)上了解有关主机文件的更多信息,并在Wikipedia.org/wiki/Domain_Name_System上了解有关DNS的更多信息。

    配置文件和指令

    通过简单的文本文件配置Apache HTTP Server。这些文件可能位于各种位置,具体取决于您安装服务器的方式。这些文件的公共位置可以在httpd Wiki中找到。如果从源安装httpd,则配置文件的默认位置为/usr/local/apache2/conf。默认配置文件通常称为httpd.conf。这在服务器的第三方发行版中也可能有所不同。

    为了便于管理,该配置通常分为多个较小的文件。这些文件是通过Include指令加载的。这些子文件的名称或位置并不是很神奇,并且在一个安装之间可能有很大的不同。安排和细分这些文件对来说最有意义。如果默认情况下您的文件排列对您没有意义,请随时重新排列。

    通过将配置指令放置在这些配置文件中来配置服务器。指令是一个关键字,后跟一个或多个设置其值的参数。

    的“这个问题我应该在哪里把该指令?”你想要一个指令是有效的,一般考虑回答。如果它是一个全局设置,它应该出现在配置文件中,任何外<Directory><Location><VirtualHost>,或其他部分。如果仅适用于特定目录,则应放在<Directory>引用该目录的部分中,依此类推。有关这些部分的进一步讨论,请参见“配置部分”文档。

    除主要配置文件外,某些指令还可以放入.htaccess内容目录中的文件中。.htaccess文件主要用于无法访问主服务器配置文件的人员。您可以.htaccess.htaccesshowto中阅读有关文件的更多信息。

    网站内容

    网站内容可以采用许多不同的形式,但可以大致分为静态和动态内容。

    静态内容是诸如HTML文件,图像文件,CSS文件以及位于文件系统中的其他文件之类的东西。该DocumentRoot指令指定应在文件系统中放置这些文件的位置。该指令可以全局设置,也可以针对每个虚拟主机设置。查看您的配置文件,以确定如何为您的服务器设置。

    通常,index.html当请求目录而不指定文件名时,将提供名为的文档。例如,如果DocumentRoot设置为,/var/www/html并且请求http://www.example.com/work/,则文件/var/www/html/work/index.html将被提供给客户端。

    动态内容是在请求时生成的任何内容,并且可能从一个请求更改为另一个请求。动态内容可以通过多种方式生成。各种处理程序可用于生成内容。可以编写CGI程序来为您的站点生成内容。

    诸如mod_php之类的第三方模块可用于编写执行各种操作的代码。许多使用各种语言和工具编写的第三方应用程序都可以在Apache HTTP Server上下载和安装。对这些第三方事物的支持不在本文档的范围内,您应该找到它们的文档或其他支持论坛来回答有关它们的问题。

    日志文件和故障排除

    作为Apache HTTP Server管理员,您最宝贵的资产是日志文件,尤其是错误日志。在没有错误日志的情况下对任何问题进行故障排除就像闭着眼睛开车。

    错误日志的位置由ErrorLog指令定义,该指令可以全局设置,也可以针对每个虚拟主机设置。错误日志中的条目会告诉您出了什么问题以及何时出问题。他们通常还会告诉您如何解决。每个错误日志消息均包含一个错误代码,您可以在线搜索该错误代码以获取有关如何解决该问题的更详细说明。您还可以将错误日志配置为包含一个日志ID,然后可以将其与访问日志条目相关联,以便您可以确定导致错误情况的请求。

    您可以在日志文档中阅读有关日志记录的更多信息。