Introduction
ApacheWeb服务器是一种开源Web服务器,因其灵活性、功能强大和广泛支持而广受欢迎。在本指南中,我们将回顾一些管理Apache服务器的常见过程,包括停止、启动和启用服务、使用虚拟主机文件和目录,以及在服务器上定位重要文件和目录。
本指南面向在Ubuntu上使用Apache的用户。使用CentOS和其他基于RHEL的发行版的用户可以查看本教程中的第一节,了解有关在CentOS上安装Apache的信息。
如何使用本指南:
- 每个部分可以独立于其他部分使用,因此可以跳到与您的需求相关的部分。
- 每个命令都是独立的,允许您用自己的值替换红色的值。
- 每个部分都有链接的资源,您可以参考这些资源以了解有关涵盖主题的更多信息。
安装APACHE服务
要安装Apache服务,请更新程序包索引,然后安装:
1sudo apt-get update
2sudo apt-get install apache2
有关安装过程的更多细节,请参阅我们的教程如何在Ubuntu 16.04.上安装ApacheWeb服务器
打开和关闭Apache单元
我们的阿帕奇服务被配置为在引导时自动启动。但是,如果我们要修改此行为,可以键入以下内容:
1sudo systemctl disable apache2.service
要允许Apache在引导时重新启动:
1sudo systemctl enable apache2.service
停止、启动、重载APACHE
要停止Apache服务器,请键入以下命令:
1sudo systemctl stop apache2
要启动Apache服务器,请键入以下内容:
1sudo systemctl start apache2
要停止服务并重新启动,请键入以下内容:
1sudo systemctl restart apache2
如果您正在进行配置更改,则可以在不中断连接的情况下重新加载Apache.键入以下命令:
1sudo systemctl reload apache2
要了解有关systemd
init系统和systemctl
命令的更多信息,请查看Systalld essentials.简介
查看服务器状态
要检查您的Apache服务器的状态,请键入以下内容:
1sudo systemctl status apache2
该命令的输出将告诉您Apache是否正在运行,并将显示日志文件中的最后几行。
为静态网站创建文档根目录
在使用阿帕奇建立网站时,开发人员经常使用虚拟主机
--由单个站点或域组成的单元。这个过程包括为‘文档根’创建一个目录,这是在提供内容时阿帕奇检查的顶层目录。
创建目录:
1sudo mkdir -p /var/www/example.com/public_html
将目录的所有权分配给您的非根用户:
1sudo chown -R $USER:$USER /var/www/example.com/public_html
允许对常规Web目录进行读取访问:
1sudo find /var/www -type d -exec chmod 775 {} \;
有关权限的更多信息,请参阅我们的linux permissions.简介请记住,您的权限可能会随着您的需要和用例而改变。
创建动态处理模块文档根目录
如果您使用的是动态处理模块(如PHP),您将按如下方式创建文档根目录:
1sudo mkdir -p /var/www/example.com/public_html
将目录所有权分配给您的非根用户,将组所有权分配给www-data
组:
1sudo chown -R sammy:www-data /var/www/example.com/public_html
修改配置设置
在使用虚拟主机时,有必要修改配置设置以反映域的具体情况,以便Apache可以正确响应域请求。
打开虚拟主机配置文件:
1sudo nano /etc/apache2/sites-available/example.com.conf
修改以下内容:
1ServerAdmin admin@example.com
2ServerName example.com
3ServerAlias www.example.com
4DocumentRoot /var/www/example.com/public_html
进行修改后,文件应如下所示(前提是该文件以前未修改过):
1[label /etc/apache2/sites-available/example.com.conf]
2<VirtualHost *:80>
3 ServerAdmin [email protected]
4 ServerName example.com
5 ServerAlias www.example.com
6 DocumentRoot /var/www/example.com/public_html
7 ErrorLog ${APACHE_LOG_DIR}/error.log
8 CustomLog ${APACHE_LOG_DIR}/access.log combined
9</VirtualHost>
故障排除时,请务必仔细检查此文件及其指令。
有关使用虚拟主机的更多详细信息,请参阅我们在在Ubuntu 16.04.上使用apache虚拟主机]上的讨论
打开和关闭配置文件
虚拟主机文件
要启用虚拟主机配置文件,请执行以下操作:
1sudo a2ensite example.com.conf
要禁用配置文件(在此特定示例中为Apache默认虚拟主机配置文件),请执行以下操作:
1sudo a2dissite 000-default.conf
Modules
要启用/etc/apache2/mods-available
中的模块,请使用以下命令:
1sudo a2enmod example_mod
要禁用特定模块,请执行以下操作:
1sudo a2dismod example_mod
配置文件
要启用/etc/apache2/conf-available
中的配置文件,请键入以下命令:
1sudo a2enconf example-conf
加入时间:清华2007年01月25日下午3:33
1sudo a2disconf example-conf
配置测试
任何时候在Apache中更改配置文件时,请确保运行以下命令以检查语法错误:
1sudo apache2ctl configtest
重要文件和目录
继续使用Apache时,您将遇到以下目录和文件:
Content
/var/www/html
:该目录存放您站点的Web内容,是其默认根目录。您可以修改apache的默认配置设置,使其指向var/www
中的其他目录。
服务器配置
/etc/apache2
:APACHE中的配置目录,它的所有配置文件都在这里。/etc/apache2/apache2.conf
:APACHE的主配置文件,存储其全局配置设置。配置目录中的其他文件是从此文件加载的。它还存储了FollowSymLinks
指令,用于控制配置的开启和关闭。/etc/apache2/Sites-Available/
:该目录存放虚拟主机配置文件,通过链接到Sites-Enabled
目录即可启用。修改服务器端块文件在该目录下,通过a2ensite
命令开启。/etc/apache2/Sites-Enabled/
:这里存放激活的虚拟主机配置文件。当Apache启动或重新加载时,它会读取此目录中的配置文件和链接,因为它符合完整的配置。/etc/apache2/conf-available
和/etc/apache2/conf-enabled
:与ites-available
和ites-enabled
的关系相同,这些目录包含未附加到虚拟主机配置文件的配置片段。/etc/apache2/mods-available
和/etc/apache2/mods-enabled
:这些目录包含两个组件:以.load
结尾的文件,其中包含加载特定模块的碎片;以.conf
结尾的文件,存储这些模块的配置。
服务器日志
/var/log/apache2/acces.log
:除非修改了apache的配置设置,否则该文件包含对Web服务器的所有请求。/var/log/apache2/error.log
:该文件有错误。要修改错误日志中的明细量,请修改/etc/apache2/apache2.conf
中的LogLevel
指令。
访问有关apache单元的信息的另一种方式是通过Journal ald
组件,该组件从应用程序和内核收集日志信息。要查看apache单元的条目,请键入以下内容:
1sudo journalctl -u apache2
Conclusion
在本指南中,我们介绍了管理Apache服务器的一些常见过程,包括停止、启动和启用服务、使用虚拟主机文件和目录以及在服务器上定位重要文件和目录。要了解有关使用Apache的更多信息,请查看以下资源:
- 如何在Ubuntu 16.04.上安装LAMP堆栈
- 如何将ApacheWeb根目录移动到Ubuntu 16.04.上的新位置
- 如何用我们在Ubuntu 16.04.上加密来保护阿帕奇
- 如何使用.htAccess File.
- 如何在Ubuntu 16.04.上使用mod_rewrite为apache重写URL
- 如何在Ubuntu 16.04.上通过mod_Proxy使用apache作为反向代理