Apache添加ip黑名单:.htaccess限制特定IP地址(段)访问

本来指望用阿里云云盾有黑名单功能的,看来是指望不到了,有两个IP每一分钟都在不停的评论,搞得wordpress进后台总是想崩溃!!

今天终于还是决定通过服务器本身过滤掉这俩IP好了,

Linux可以通过两种方法添加IP过滤。

1、通过iptables规则
可以参考Linux防火墙规则设置,太多了,这里就不写了

2、通过Apache网站根目录里的htaccess文件加过滤

#添加IP黑名单

Order Deny,Allow
Deny from 121.42.17.220
Deny from 42.120.107.28

如果你想过滤IP地址段,可以写成
Deny from 42.120.107.28/24

这样可以过滤掉 42.120.107.1~42.120.107.255范围的所有IP访问网址

。。。

重启下apache服务,世界终于清静了。

Restarting web server: apache2apache2: apr_sockaddr_info_get() failed for

重启Apache的时候提示:

[….] Restarting web server: apache2apache2: apr_sockaddr_info_get() failed for (none)
apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1 for ServerName
… waiting ……….apache2: apr_sockaddr_info_get() failed for (none)
apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1 for ServerName

解决办法:
打开 /etc/apache2/apache2.conf
在里面加入:

ServerName localhost

即可。
或者 打开 /etc/apache2/httpd.conf
在里面加入

ServerName localhost

然后重启服务器就ok了。

PS:其实这个只是警告没有配置默认主机名,可以不用理会的,如果你和我一样看不顺眼那警告信息,那就加个servername好了。

CentOS5 安装 Apache MySQL PHP Zend Optimizer

系统环境:Centos 5.8

更新系统内核
yum -y update

1、安装Apahce、PHP、MySQL、PHP连接MySQL库组件;
yum -y install httpd php mysql mysql-server php-mysql
安装MySQL扩展;
yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
mysqladmin -u root password ‘设置密码’; (引号内填密码)

查看mysql版本号
mysql -V

2、PHP的安装
yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-mcrypt

3、安装Apache扩展
yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql

4、安装Zend Optimizer
cd /usr/local/src
wget http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz
tar xzvf ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz

有暗转说明。。。

五、启动服务配置
/sbin/chkconfig httpd on (设置Apache为自启动)
/sbin/chkconfig –add mysqld (MySQL服务)
/sbin/chkconfig mysqld on (mysqld服务)
service httpd start (自启动httpd服务)
service mysqld start (自启动mysqld服务)

借助阿里云sh脚本Linux一键安装web环境

系统环境:CentOS6

卸载CentOS自带Apache

rpm -qa|grep httpd,查看与httpd相关软件包。
rpm -e httpd

因为这个一键安装是通过脚本编译按照的。
SO,首先需要解决编译环境问题

获取相关开源程序:
1、【适用CentOS操作系统】利用CentOS Linux系统自带的yum命令安装、升级所需的程序库(RedHat等其他Linux发行版可从安装光盘中找到这些程序库的RPM包,进行安装):
sudo -s
LANG=C
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers

2、进入home目录建立tmp目录
mkdir -p /home/tmp
cd tmp

3、下载一键安装脚本
wget http://soft.phpwind.me/web/sh.zip

unzip sh.zip
chmod -R 777 sh
cd sh
./install.sh

出现了一个选择提示,进入web服务器版本的选择界面,可以根据需要选择apache或者nginx服务器
这里我们选择nginx,输入n,回车

参考:
linux一键安装web环境全攻略 http://help.aliyun.com/manual?helpId=129

Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)[原创] http://blog.s135.com/nginx_php_v6/

一键安装web环境全攻略

配置Apache/2.2.16 (Debian) 支持 .htaccess

配置apache2.2 伪静态

第一步:修改sites-available中对应的网站配置文件(以默认配置文件default为例)
nano nano /etc/apache2/sites-available/default

找到以下语句

AllowOverride None

修改为

Options FollowSymLinks
AllowOverride All

第二步:载入rewrite.load(默认装好后apache是没有建立文件连接的)
#cd /etc/apache2/mods-enabled
#ln -s ../mods-available/rewrite.load rewrite.load

第三步:重启apache
/etc/init.d/apache2 restart

Apache2/Nginx 下配置404页面 备忘

 

今天发现空间没有设置404错误页面,折腾Apache/Nginx配置文件

环境:
Apache2
Nginx0.8

Apache下配置404错误页面

1、vi /etc/apache2/site-available/clin003.com(你的网站配置文件)
修改
AllowOverride None

AllowOverride All
2、在网站根目录.htaccess中添加
ErrorDocument 404 /404.html

3、重启apache
/etc/init.d/apache2 restart

Nginx下配置404错误页面

1、更改nginx.conf在http定义区域加入:

fastcgi_intercept_errors on;

2、更改nginx.conf在server 区域加入:

error_page 404 = /404.html

3、检查配置文件是否有误,然后加载配置文件

/usr/local/server/nginx/sbin/nginx -t(这个server目录,要看你自己的情况喔)

/usr/local/server/nginx/sbin/nginx -s reload