[乐意黎转载]Centos 7 Apache 服务安装及配置

前言

在上篇文章中,已经对 Centos 7 FTP(vsftp)服务安装及配置进行了详细的介绍,如果你对于FTP有什么不懂的可以去看看这篇文章。在这里我就不重复了。本文给大家介绍下在Centos 7 下如何安装及配置 Apache,Apache的安装及配置比FTP的安装及配置更为简单些。只需要几行代码就可以了。下面我们马上开始吧!

Apache 安装

Apache的安装非常地简单,你只需要输入一行代码回车就可以了

 
  
  1. # yum install httpd

同样的在安装过程中会提示“is this ok [y/d/N]”,输入y,回车即可。

这样就完成了Apache 的安装。

Apache 配置

安装完之后,这个服务是还没开启的,所以接下来我们可以通过一段命令代码来开启 Apache 服务

 
  
  1. # systemctl start httpd.service

你还可以通过下面这一行命令代码查看Apache 服务的运行状态

 
  
  1. # systemctl status httpd.service

还有一行命令代码你需要运行下的,它可以让你在重启服务器时自动启动Apache 服务,这样就不怕重启服务后,手动开启Apache 服务了。

 
  
  1. # systemctl enable httpd.service

如果有需要(如:更改站点根目录),你还可以打开Apache的配置文件进行编辑

 
  
  1. # vim /etc/httpd/conf/httpd.conf

安装完这后,你在浏览器中输入IP时,你还不能访问站点。这是因为防火墙里没设置端口规则,下面我们可以对防火墙进行相应的配置,打开防火墙(默认时firewalld防火墙是关闭的,iptables是开启的,所以我们在这里对 iptables 进行修改)的配置文件

 
  
  1. # vi /etc/sysconfig/iptables

按i键进入编辑模式,在文件里追加如下一行代码

 
  
  1. -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT

编辑完成后,按 Esc 键退出编辑模式,然后按:wq,保存退出。

重启下 iptables 服务就可以了

 
  
  1. # systemctl restart iptables.service

Apache 服务到此已经配置完成,现在你就可以通过IP来访问站点了,此时你会看到一个 Apache 的测试页面,如果没有显示 Apache 的测试页面说明配置还没成功。重复上面的步骤即可,这个测试页面也不是没用的,至少它在页面的右下角告诉了你它的默认站点目录 /var/www/html。如果你不满意它给你设定好的站点根目录,你也可以自定义站点目录。

如果你觉得 Apache 的测试页面不能说明什么问题,那么你可以执行下面一行命令代码,在站点目录下新建一个 index.html 文件进行测试。

 
  
  1. # echo "我是一个新站点!" >> /var/www/html/index.html

刷新下页面后,如果页面显示内容为:“我是一个新站点!”,则说明 Apache 配置成功了。

自定义站点目录

改变 Apache 默认的站点根目录,我们先通过下面的命令代码创建新站点目录,这例子中我们直接在 Apache 站点根目录下直接创建一个目录,至于这个站点目录其实放到哪都没问题。作为例子,就怎么简单怎么来就好,能把问题说清楚就够了。

输入下面命令行,在 Apache 默认的站点根目录新建一个目录 yunkus.com

 
  
  1. # mkdir /var/www/html/yunkus.com

这一步做完之后,我们还得修改下 Apache 的配置文件

输入下面的命令行

 
  
  1. # vi /etc/httpd/conf/httpd.conf

定位到下面这一行代码

 
  
  1. DocumentRoot "/var/www/html"

修改成

 
  
  1. DocumentRoot "/var/www/html/yunkus.com"

这样Apache 的站点根目录就更改成了/var/www/html/yunkus.com,当你在地址栏中输入服务器的IP时默认就会访问yunkus.com目录了。

但在这里不说说另一种情况是不行的,因为如果你完完全全地更改了站点的根目录后,你不仅要修改 DocumentRoot “/var/www/html” ,你还得修改其它地方,下面我再举一个例子。

如:我们想把站点的根目录改成/home/wwwroot/yunkus.com 目录下。

我们首先要做的就是创建这个目录

 
  
  1. # mkdir -p /home/wwwroot/yunkus.com

进入配置文件

 
  
  1. # vi /etc/httpd/conf/httpd.conf

定位到 DocumentRoot “/var/www/html/” 把

 
  
  1. DocumentRoot "/var/www/html"

修改成

 
  
  1. DocumentRoot "/home/wwwroot/yunkus.com"

除了修改这里外,我们还得多修改一个地方,定位到

 
  
  1. # Further relax access to the default document root:
  2. <Directory "/var/www/html">

按下i键进入编辑模式,把上面的代码改成

 
  
  1. # Further relax access to the default document root:
  2. <Directory "/home/wwwroot/yunkus.com">

为了方便你定位,我把它上一行注释的代码也复制过来了。你只需要关心第二行代码就行。改完后,按 Esc 键退出编辑模式,再按:wq退出保存。

 注意:记得重启 Apach 服务!

 
  
  1. # systemctl restart httpd.service

现在你就可以访问站点试试了。如果你站点目录下没有任何文章,那么当你访问时就会出现 Apache 测试页面,这是再正常不过了,但如果你想访问这个站点目录下的其它文件如:index.html (默认的访问文件格式)时,不管你怎么刷新,浏览器还是显示 Apache 测试页面,这又是为什么呢?原来,我们还没给这个站点目录相应的权限(默认是750),所以给目录修改权限势在必行。

执行下下命令行

 
  
  1. # chmod -R 755 /home/wwwroot/yunkus.com

 注意:R 要大写。

现在你再刷新试试,现在访问 index.html 应该没什么问题了。

相关命令

在这里为了方便你学习Linux的相关命令,我把本文中所涉及到的命令重新整理出来,这样可以让你对Linux的命令行有一个更加全面的了解。

Apache 服务安装

 
  
  1. # yum install httpd

开启 Apache 服务

 
  
  1. # systemctl start httpd.service

重启 Apache 服务

 
  
  1. # systemctl restart httpd.service

停用Apache 服务

 
  
  1. # systemctl stop httpd.service

查看Apache 服务状态

 
  
  1. # systemctl status httpd.service

重启服务器自动启动Apache 服务

 
  
  1. # systemctl enable httpd.service

打开Apache 配置文件

 
  
  1. # vim /etc/httpd/conf/httpd.conf

iptables 防火墙

系统默认情况下iptables 防火墙服务是开启的。

编辑 iptables 防火墙配置文件

 
  
  1. # vi /etc/sysconfig/iptables

查看 iptables 防火墙服务

 
  
  1. # systemctl status iptables.service

重启服务器自动启动 iptables 服务

 
  
  1. # systemctl enable iptables.service

开启 iptables 防火墙服务

 
  
  1. # systemctl start iptables.service

重启 iptables 防火墙服务

 
  
  1. # systemctl restart iptables.service

关闭 iptables 防火墙服务

 
  
  1. # systemctl stop iptables.service

firewalld 防火墙

系统默认情况下firewalld防火墙是关闭的。

编辑防火墙配置文件

 
  
  1. # vi /etc/sysconfig/iptables

查看 firewalld 防火墙服务

 
  
  1. # systemctl status firewalld.service

重启服务器自动启动 firewalld 服务

 
  
  1. # systemctl enable firewalld.service

开启 firewalld 防火墙服务

 
  
  1. # systemctl start firewalld.service

重启 firewalld 防火墙服务

 
  
  1. # systemctl restart firewalld.service

关闭 firewalld 防火墙服务

 
  
  1. # systemctl stop firewalld.service

你可能感兴趣的:([乐意黎转载]Centos 7 Apache 服务安装及配置)