web服务器 apache_如何配置Apache Web服务器

web服务器 apache

我已经托管了自己的网站很多年了。 自从20年前从OS / 2切换到Linux以来,我一直使用Apache作为服务器软件。 Apache是​​可靠的,众所周知的,并且对于基本安装而言很容易配置。 为更复杂的设置(例如多个网站)进行配置实际上并没有那么困难。

我的虚拟主机上的student 。)

安装

注意:我将虚拟机(VM)与Fedora 27和Apache 2.4.29一起使用。 如果您使用其他发行版或不同版本的Fedora,则您的命令以及配置文件的位置和内容可能会有所不同。 但是,您需要修改的配置行是相同的。

Apache Web服务器易于安装。 在我的CentOS 6.x服务器上,它只需要一个简单的yum命令。 如果缺少任何必需的依赖项,它将安装所有必需的依赖项。 我在我的Fedora虚拟机之一上使用了以下dnf命令。 dnfyum的语法相同,只是命令本身的名称不同。


dnf -y install httpd 

VM是非常基本的桌面安装,我用作编写书籍的测试平台。 即使在此系统上,在一分钟内也仅安装了六个依赖项。

Apache的所有配置文件都位于/etc/httpd/conf/etc/httpd/conf.d 。 网站的数据默认情况下位于/var/www ,但您可以根据需要进行更改。

组态

Apache的主要配置文件是/etc/httpd/conf/httpd.conf 。 它包含许多基本安装不需要更改的配置语句。 实际上,仅需对该文件进行少量更改即可启动并运行基本网站。 该文件非常大,因此,本文将只显示您需要更改的那些指令,而不是使本文不必要的东西杂乱无章。

首先,花一些时间浏览httpd.conf文件以熟悉它。 我喜欢大多数配置文件的Red Hat版本的一件事是描述文件中各个部分和配置指令的注释数量。 httpd.conf文件也不例外,因为它的注释很好。 使用这些注释来了解文件正在配置的内容。

要更改的第一项是Listen语句,它定义了Apache用来侦听页面请求的IP地址和端口。 现在,您只需要使该网站可用于本地计算机即可,因此请使用localhost地址。 完成后,该行应如下所示:


Listen 127.0.0.1:80 

将此指令设置为localhost的IP地址后,Apache将仅侦听来自本地主机的连接。 如果希望Web服务器侦听来自远程主机的连接,则可以使用主机的外部IP地址。

DocumentRoot指令指定组成网站页面HTML文件的位置。 该行不需要更改,因为它已经指向标准位置。 该行应如下所示:


DocumentRoot "/var/www/html" 

Apache安装RPM创建/var/www目录树。 如果要更改网站文件的存储位置,则使用此配置项来完成。 例如,您可能想对www子目录使用其他名称,以使网站的标识更加明确。 可能看起来像这样:


DocumentRoot "/var/mywebsite/html" 

这些是创建简单网站所需的唯一Apache配置更改。 在此小练习中,仅对httpd.conf文件进行了一个更改— Listen指令。 其他所有内容均已配置为产生正常工作的Web服务器。

但是,还需要进行另一项更改:在防火墙中打开端口80。 我将iptables用作防火墙,因此我更改了/etc/sysconfig/iptables以添加允许HTTP协议的语句。 整个文件如下所示:



   
   
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

我添加的行是底部的第三行,它允许端口80上的传入流量。现在,我重新加载更改后的iptables配置。


[root@testvm1 ~]# cd /etc/sysconfig/ ; iptables-restore iptables 

创建index.html文件

index.html文件是仅当您使用域名而不是特定HTML文件名访问网站时Web服务器将提供的默认文件。 在/var/www/html目录中,创建一个名为index.html的文件。 添加内容Hello World 。 您无需添加任何HTML标记即可完成此工作。 Web服务器的唯一工作是提供文本数据流,而服务器不知道日期是什么或如何呈现它。 它只是将数据流传输到发出请求的主机。

保存文件后,将所有权设置为apache.apache


[root@testvm1 html]# chown apache.apache index.html 

启动Apache

Apache非常容易启动。 当前版本的Fedora使用systemd 。 运行以下命令将其启动,然后检查服务器的状态:



   
   
[root@testvm1 ~]# systemctl start httpd
[root@testvm1 ~]# systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2018-02-08 13:18:54 EST; 5s ago
     Docs: man:httpd.service(8)
 Main PID: 27107 (httpd)
   Status: "Processing requests..."
    Tasks: 213 (limit: 4915)
   CGroup: /system.slice/httpd.service
           ├─27107 /usr/sbin/httpd -DFOREGROUND
           ├─27108 /usr/sbin/httpd -DFOREGROUND
           ├─27109 /usr/sbin/httpd -DFOREGROUND
           ├─27110 /usr/sbin/httpd -DFOREGROUND
           └─27111 /usr/sbin/httpd -DFOREGROUND

Feb 08 13:18:54 testvm1 systemd[1]: Starting The Apache HTTP Server...
Feb 08 13:18:54 testvm1 systemd[1]: Started The Apache HTTP Server.

服务器上的命令可能不同。 在使用SystemV启动脚本的Linux系统上,命令为:



   
   
[root@testvm1 ~]# service httpd start
Starting httpd: [Fri Feb 09 08:18:07 2018]          [  OK  ]
[root@testvm1 ~]# service httpd status
httpd (pid  14649) is running...

如果您的主机上装有Firefox或Chrome之类的网络浏览器,则可以使用浏览器的URL行上的URL localhost来显示您的网页,方法很简单。 您还可以使用文本模式的Web浏览器(例如Lynx)来查看网页。 首先,安装Lynx(如果尚未安装)。


[root@testvm1 ~]# dnf -y install lynx 

然后使用以下命令显示网页。


[root@testvm1 ~]# lynx localhost 

结果在我的终端会话中看起来像这样。 我已经删除了页面上的许多空白区域。



   
   
  Hello World

<snip>


Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back.
  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.
 H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list

接下来,编辑index.html文件,并添加一些HTML标记,如下所示:


<h1>Hello World</h1> 

现在刷新浏览器。 对于Lynx,请使用组合键Ctrl + R。 结果看起来有些不同。 文本为彩色,如果终端支持彩色,Lynx就是这样显示标题的方式,并且现在居中。 在GUI浏览器中,文本将采用大字体。



   
   
                                   Hello World

<snip>


Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back.
  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.
 H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list

离别的想法

从这个小练习中可以看出,设置Apache Web服务器很容易。 具体情况将取决于您的发行版以及该发行版提供的Apache版本。 在我的环境中,这是一个非常琐碎的练习。

但是还有更多的原因,因为Apache非常灵活和强大。 下个月,我将讨论使用一个Apache实例托管多个网站。

翻译自: https://opensource.com/article/18/2/how-configure-apache-web-server

web服务器 apache

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值