Category: Apache / Nginx

Apache Log 储存到 MySQL

Apache 默认会将 Log 记录档储存到文字档,一般会在 logs/ 目录,或者 /var/log/httpd/ 目录。将 Apache Log 储存到 MySQL 除了可以方便过滤记录档内资讯外,也可以实现多个 Apache Log 集中管理。 以前试过自己写 Shell Script 将 Log 插入 MySQL,但原来已经有 Apache Module 可以做这件事,十分方便。以下是 Apache 设定将 Log …

Apache 设定忽略档案字母大小写

在 Unix Like 的作业系统, 档案及目录名称的英文字母大小写有分别, 而在 Windows 内则没有分别, 所以有些网页放在 Windows 主机上可以正常浏览, 而放到 Linux 上便会出现连结失效, 或者图片, CSS, Javascript 不能加载等问题。 例如这样一个超连结: 〈a href=’Filename.htm’〉links〈/a〉 在 Windows 下, 只要档案符合连结内的字母, 不会区分大小写, 所以如果档案名称是 “filename.htm” 可以正确浏览, …

Apache 动态管理 VirtualHost

VirtualHost 可以让多个网站在一台主机上运行, 一般上每个 VirtualHost 都需要加入一段 “ “, 然后设定 ServerName, ServerAlias 及 DocumentRoot, 例如有两个网址, 分别是 www.mydomain.com 及 blog.mydomain.com, 在 httpd.conf 部份要加入类似这样的设定: 另一种方法是动态设定 VirtualHost, 以上面的例子, 可以用一段 设定。 首先开启 httpd.conf: # vi …

Apache 设定 http 自动转址导向 https

当网站从 http 转换到 https 后,想自动将前往 http 的访客自动转址到 https,可以通过修改 .htaccess 设定mod_rewrite,或者直接编译 httpd.conf 实现,以下是两种方法的设定步骤。 .htaccess 例如我想将所有访客重新导向 https 相应的页面,只要在 .htaccess 设定即可: 修改后便会生效,不用重新启动 Apache. httpd.conf 在 httpd.conf 找到 http 的相关 virtualhost, 在段落最后加上以下一行: Redirect …

Apache 开启 .htaccess 设定

.htaccess 档案是目录层面的设定档, 可以对目录变更 Apache 的设定, 例如更改 DocumentIndex, 转址及密码保护等在 httpd.conf 的设定。 要使用 .htaccess 档案, 需要在 Apache 的设定档 (httpd.conf 或 apache2.conf) 开启使用, 否则 Apache 是不会处理 .htaccess 的设定的。 开启 .htaccess, 首先开档 Apache …

Apache 限制 IP 存取

Apache 内建了限制 IP 存取的功能, 可以设定成禁止某些 IP 不能存问, 或者只允许特定 IP 存取, 以下会以 Apache 2.4 为例, 设定 Apache 的存取限制。 以下假设 /var/www/html/members 目录, 只允许特定 IP (192.168.1.100 及 192.168.1.101) 存取, 可以透过修改 httpd.conf 或 …

找出存取 Apache 最多的 IP 地址

一台开放的网页服务器内, 除了正常的访问外, 也包括其他像 Search Engine Bots 及恶意攻击的连接, 这些连接资料都储存在 Apache 的纪录档内。要找出存取 Apache 最多的 IP 地址, 可以透过 awk, sort, uniq 及 head 指令完成。 Apache 默认的纪录档位置是: /var/log/httpd/access_log /var/log/apache2/access_log 以下指令会找出纪录档内, 连线数量最多的 10 个 …