Tag: Apache

解决 WordPress 的 xmlrpc.php DDOS 攻击

XML-RPC 是 WordPress 的 API, 给开发者开发手机 Apps, 桌面应用程式或其他服务时, 可以跟 WordPress 沟通, 从远端能达到很多需要登入 WordPress 后台才能做的工作。xmlrpc.php 则是负责这个 API 的档案, 而很多针对 WordPress 的 DDOS 攻击也是针对这个档案。 早前在一台 VPS 上面, MySQL 的使用资源很高, 停止 Apache …

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 …

同时安装多个 PHP 版本

现在 PHP 其中一个很大的问题, 是很多个不同的 PHP 版本都有人使用, 对于开发者需要顾及程式码是否可以在不同版本执行, 而对系统管理员, 就要面对不同程式可能需要不同 PHP 版本。 以下记录一下在系统安装不同 PHP 版本, 并可以按需要设定不同 Virtualhost 或目录, 可以使用不同 PHP 版本的方法, 以下会以 CentOS 7 及 Apache 作为安装环境。 首先在系统用 YUM 安装好 …

找出属于个别帐号档案并 chown

今天将一台 CentOS 6 服务器内所有网站,輚移到另一台 CentOS 7,转移过程连同档案权限, owner 及 group 都一同复制,测试后发现多数网站都运作正常,唯独有用 PHP 建立的档案及目录便有写入失则的问题。 查看了档案的权限是正确的,但用 “ls -l” 查看那些出问题的档案及目录,看到 owner 不是显示 “apache”, 而是显示 “80”, 原来 CentOS 6 时 Apache 帐号的 uid 是 …

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 个 …