你可以在 Apache 上做各种各样的配置,但是主要的和最常见的配置将在下面做出解释。
检查 Apache 是否正在运行
默认情况下,Apache 设置为在机器启动时自动启动,因此你不必手动启用它。你可以使用以下命令检查它是否正在运行以及其他相关信息:
systemctl status apache2
check if apache is running
并且你可以检查你正在使用的版本:
apachectl -V
一种更简单的检查方法时访问服务器的 IP 地址,如果你得到默认的 Apache 页面,那么一切都正常。
更新你的防火墙
如果你使用防火墙(你应该使用它),则可能需要更新防火墙规则并允许访问默认端口。Ubuntu 上最常用的防火墙是 UFW,因此以下说明使用于 UFW。
要允许通过 80(http)和 443(https)端口的流量,运行以下命令:
ufw allow 'Apache Full'
安装常见的 Apache 模块
一些模块经常被建议使用,所以你应该安装它们。我们将包含最常见模块的说明:
使用 PageSpeed 加速你的网站
PageSpeed 模块将自动优化并加速你的 Apache 服务器。
首先,进入 PageSpeed 下载页并选择你需要的的文件。我们使用的是 64 位 Ubuntu 服务器,所以我们安装最新的稳定版本。使用 wget
下载它:
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb
然后,使用以下命令安装它:
dpkg -i mod-pagespeed-stable_current_amd64.debapt-get -f install
重启 Apache 以使更改生效:
systemctl restart apache2
使用 mod_rewrite 模块启动重写/重定向
顾名思义,该模块用于重写(重定向)。如果你使用 WordPress 或任何其他 CMS 来处理此问题,你就需要它。要安装它,只需运行:
a2enmod rewrite
然后再次重新启动 Apache。你可能需要一些额外的配置,具体取决于你使用的 CMS,如果有的话。为你的设置 Google 一下得到它的具体说明。
使用 ModSecurity 模块保护你的 Apache
顾名思义,ModSecurity 是一个用于安全性的模块,它基本上起着防火墙的作用,它可以监控你的流量。要安装它,运行以下命令:
apt-get install libapache2-modsecurity
再次重启 Apache:
systemctl restart apache2
ModSecurity 自带了一个默认的设置,但如果你想扩展它,你可以使用 OWASP 规则集。
使用 mod_evasive 模块抵御 DDoS 攻击
尽管 mod_evasive 在防止攻击方面有多大用处值得商榷,但是你可以使用它来阻止和防止服务器上的 DDoS 攻击。要安装它,使用以下命令:
apt-get install libapache2-mod-evasive
默认情况下,mod_evasive 是禁用的,要启用它,编辑以下文件:
nano /etc/apache2/mods-enabled/evasive.conf
取消注释所有行(即删除 #
),根据你的要求进行配置。如果你不知道要编辑什么,你可以保持原样。
mod_evasive
创建一个日志文件:
mkdir /var/log/mod_evasivechown -R www-data:www-data /var/log/mod_evasive
就是这样。现在重启 Apache 以使更改生效。
systemctl restart apache2
你可以安装和配置附加模块,但完全取决于你和你使用的软件。它们通常不是必需的。甚至我们上面包含的 4 个模块也不是必需的。如果特定应用需要模块,那么它们可能会注意到这一点。
用 Apache2Buddy 脚本优化 Apache
Apache2Buddy 是一个可以自动调整 Apache 配置的脚本。你唯一需要做的就是运行下面的命令,脚本会自动完成剩下的工作:
curl -sL https://raw.githubusercontent.com/richardforth/apache2buddy/master/apache2buddy.pl | perl
如果你没有安装 curl
,那么你可能需要安装它。使用以下命令来安装 curl
:
apt-get install curl