Category: Apache / Nginx
在 RHEL 及 CentOS 透过 YUM 或 RPM 安装的套件, 其默认安装目录跟编译安装有所不同, 以下是 Apache, PHP 及 MySQL (MariaDB) 在 RHEL 及 CentOS 的默认安装目录及设定档位置: Apache: 默认安装目录: /etc/httpd/ DocumentRoot: /var/www/html/ httpd.conf 路径: /etc/httpd/conf/httpd.conf …
Let’s Encrypt 是一个免费及开放的提供凭证的机构(CA), 以下是在 Debian 及 Ubuntu 将 Let’s encrypt 配置到 Apache 的方法。 先用 apt-get 安装 Apache: $ apt-get install apache2 然后启动 SSL 模组及重新启动 Apache: $ sudo a2enmod ssl …
要在一部主机上面存放多个网站, 可以透过 Apache 的 Virtual Host 实现。以下会示范在 RHEL 及 CentOS 建立 Apache Virtual Host 的方法。 在开始前, 先要建立存放网站的目录, 即 Document Root, 在 CentOS 下 Apache 的默认目录是 /var/www/html, 以下会以 website01.com 及 …
mod_security 是 Apache 的保安模组,可以预防多种针对网页的攻击,例如执行远端程式码, SQL Injection,路径扫瞄等。以下是在 RHEL 及 CentOS 安装 mod_security 的方法: 1. 安装 mod_security 所需套件: # yum install gcc make httpd-devel libxml2 pcre-devel libxml2-devel curl-devel git 2. 下载 …
在 Apache 里面有一个选项是 LimitRequestBody,这个选项可以限制用户送出的 HTTP 请求内容。这个选项可以在 .htaccess 或 httpd.conf 里使用,而如果在 httpd.conf 内使用,分别可以用在 virtualhost 或目录属性设定。而 LimitRequestBody 的设定值是介乎 0 (无限制) 至 2147483647 (2GB)。 例如要在目录 /home/httpd/html/www.mydomain.com/uploads 设定上传限制为 100K,可以在 .htaccess 或 httpd.conf 加入以下语句: …
.htaccess 可以改变 Apache 对目录的设定, 其中一个十分常用的地方是转址, 以下是 .htaccess 常用转址例子: 301 永久转址: 302 临时转址 将档案转到指定档案位置 将没有 www 的网址转到 www 开头网址: 将 www 开头的网址转到没有 www 网址: 将所有不是 new-domain.com 转到 new-domain.com
上一篇文章 Apache Log Rotate 设定 讲述了 Apache 轮替记录档的方法, 但如果旧日志一直不理的话, 同样占据碟碟空间, 因为 Apache 不会删除旧记录档, 而且将新记录写入新建立的档案, 以下 Perl Script 可以自动删除旧记录档, 只要设定好记录档目录, 名称后, 放到 crontab 执行便可以了。 这个 Perl Script 会扫瞄记录档目录, 并查看档案名称为是 access …
Apache log 里面包含有很多有用资讯, 包括侦测攻击行为及正常存取量等, 但如果一直不理会记录档的话, 会占用很多硬盘空间, 所以设定 log rotate 是必须的, Apache 内建 rotatelogs 工具可以做 log rotate, 实现方法如下: 1. 开启 httpd.conf, 找到 CustomLog 及 ErrorLog 的设定行. 2. 例如原来 CustomLog 及 …
在 Apache 2.4 编译 mod_evasive 时遇到以下错误: mod_evasive20.c: In function ‘access_checker’: mod_evasive20.c:142: error: ‘conn_rec’ has no member named ‘remote_ip’ mod_evasive20.c:146: error: ‘conn_rec’ has no member named ‘remote_ip’ mod_evasive20.c:158: error: ‘conn_rec’ …
Apache 刚从 2.2 升级到 2.4, 在 Apache 2.4 的 VirtualHost 设定不同以前, 新语法更简单易用: 旧设定方法: <VirtualHost 123.242.230.29> ServerName testing.testing.com DocumentRoot /var/www/html </VirtualHost> Apache 2.4 设定方法 <VirtualHost *:80> ServerName …