Apache服务器配置 CentOS

来源:互联网 发布:js数组push进前面 编辑:程序博客网 时间:2024/05/29 10:07

安装配置mod_deflate/mod_rewrite

给普通用户赋权限:chmod a+w 777 -R /

切换到root启动:su 回车输入密码即可

关闭防火墙:service iptables stop

一、   准备:

虚拟机  :VMware-10.0.2

安装环境:CentOS-6.5-i386

安装包:

apr-1.5.2.tar.gz

apr-util-1.5.4.tar.gz

pcre-8.20.tar.gz

httpd-2.4.25.tar.gz

apache-tomcat-7.0.52.tar.gz

 

二、   安装Apache服务器

1.     卸载自带apache

如:执行:root@server ~]# rpm -qa|grep httpd

httpd-2.2.3-11.el5_2.centos.4 

httpd-manual-2.2.3-11.el5_2.centos.4

 

卸载:rpm –ehttpd-manual-2.2.3-11.el5_2.centos.4(-e 后面写执行后显示的包名)

                  *:rpm –e 命令可能提示有依赖的包,那么先卸载以来的包或者 在上一个命令后加—nodeps(不理依赖包,仅仅删除写的)

2.     安装依赖包

a)        安装gcc(提供的默认有否则执行)

[root@localhost /]# yum install gcc gcc-c++

b)        安装apr-1.5.2.tar.gz
[root@localhost local]# mkdir -p apr
[root@localhost local]# tar -zxf apr-1.5.2.tar.gz
[root@localhost local]# cd apr-1.5.2
[root@yahoo apr-1.5.2]# ./configure--prefix=/usr/local/apr
[root@yahoo apr-1.5.2]# make
[root@yahoo apr-1.5.2]# make install

c)        安装apr-util-1.5.4.tar.gz
[root@localhost local]# mkdir -p apr-util
[root@localhost local]# tar -zxf apr-util-1.5.4.tar.gz
[root@localhost local]# cd apr-util-1.5.4
[root@yahoo apr-util-1.5.4]# ./configure--prefix=/usr/local/apr-util -with-apr=/usr/local/apr/bin/apr-1-config
[root@yahoo apr-util-1.5.4]# make
[root@yahoo apr-util-1.5.4]# make install

 

d)        安装pcre-8.20.tar.gz

[root@localhost local]# mkdir -ppcre
[root@localhost local]# tar -zxfpcre-8.20.tar.gz
[root@localhost local]# cd pcre-8.20
[root@yahoo pcre-8.20]# ./configure--prefix=/usr/local/pcre
[root@yahoo pcre-8.20]# make
[root@yahoo pcre-8.20]# make install

3.     安装apache

a)        安装httpd-2.4.25.tar.gz

[root@localhost local]# mkdir -p/usr/local/apache2
[root@localhost local]# tar zxvfhttpd-2.4.25.tar.gz
[root@localhost local]# cd httpd-2.4.25
[root@localhost httpd-2.4.25]# ./configure --prefix=/usr/local/apache2--with-pcre=/usr/local/pcre --with-apr=/usr/local/apr--with-apr-util=/usr/local/apr-util
[root@localhost httpd-2.4.25]# make
[root@localhost httpd-2.4.25]# make install

[root@localhost httpd-2.4.25]# /usr/local/apache2/bin/apachectlstart


用Linux自带浏览器访问http://ip地址,看到It works!,说明安装成功了!

 

b)        启动/停止/重启

[root@localhost apache2]# /usr/local/apache2/bin/apachectlstart

[root@localhost apache2]# /usr/local/apache2/bin/apachectlstop

[root@localhost apache2]# /usr/local/apache2/bin/apachectlrestart

4.     外部访问

*不配也不影响访问,但是启动的时候会提示你

AH00557:httpd: apr_sockaddr_info_get() failed for Kikuu02

AH00558:httpd: Could not reliably determine the server's fully qualified domain name,using 127.0.0.1. Set the 'ServerName' directive globally to suppress thismessage

a)        修改hosts文件

[root@localhost apache2]# vim/etc/hosts

添加IP地址和主机名的映射关系

         如:192.168.93.147www.wangsai1111.com

 

b)        修改httpd.conf文件

[root@localhost apache2]# vim /usr/local/apache2/conf/httpd.conf

         修改监听地址和ServerName的主机名和域名信息

         如:Listen 192.168.93.147:80

                   ServerNamewww.wangsai1111.com

重启服务

[root@localhost apache2]# /usr/local/apache2/bin/apachectlrestart

 

*关闭防火墙和SElinux

         关闭防火墙:[root@localhostapache2]# service iptables stop(立即生效,重启后失效)

                                     [root@localhostapache2]#chkconfig iptables off(重启生效)

         关闭SElinux:   [root@localhost apache2]# setenforce 0

打开浏览器输入Linux地址,看到It works!,说明安装成功了!

三、   配置gzip压缩

1.     安装zlib

[root@localhost apache2]# yuminstall zlib-devel

乌班图:    $ sudo apt-get install zlib1g        $ sudo apt-get install zlib1g.dev

 

2.     安装mod_deflate

[root@localhost /]# find –name mod_deflate.so(查找文件,复制路径)

[root@localhost /]# cd 查到的路径不包含mod_deflate.so

[root@localhost /]# /usr/local/apache2/bin/apxs -i -c -a mod_deflate.c (编译)

 

[root@localhost apache2]# vim /usr/local/apache2/conf/httpd.conf

在LoadModule deflate_module modules/mod_deflate.so的上一行

配置LoadFile /usr/lib/libz.so(加载mod_deflate要依赖zlib)

[root@localhost apache2]# /usr/local/apache2/bin/apachectl restart

3.     配置

a)        修改Apache的http.conf文件去掉#

[root@localhost apache2]# vim/usr/local/apache2/conf/httpd.conf

LoadModule deflate_module modules/mod_deflate.so

LoadModule headers_module modules/mod_headers.so

b)        #定制压缩规则

<ifmodulemod_deflate.c>

DeflateCompressionLevel6

AddOutputFilterByTypeDEFLATE text/plain

AddOutputFilterByTypeDEFLATE text/html

AddOutputFilterByTypeDEFLATE text/xml

AddOutputFilterByTypeDEFLATE text/css

AddOutputFilterByTypeDEFLATE text/JavaScript

AddOutputFilterByTypeDEFLATE application/xhtml+xml

AddOutputFilterByTypeDEFLATE application/xml

AddOutputFilterByTypeDEFLATE application/rss+xml

AddOutputFilterByTypeDEFLATE application/atom_xml

AddOutputFilterByTypeDEFLATE application/x-javascript

AddOutputFilterByTypeDEFLATE application/x-httpd-php

AddOutputFilterByTypeDEFLATE image/svg+xml

</ifmodule>

4.     测试

用火狐浏览器查看响应头信息:

Content-Encoding    gzip

有则说明成功

 

四、   配置URL转发到tomcat

1.     搭建tomcat

[root@localhost /]#tar zxf apache-tomcat-8.0.9.tar.gz

[root@localhost /]# mkird /usr/local/tomcat

[root@localhost /]# mv apache-tomcat-8.0.9.tar.gz /usr/local/tomcat/

[root@localhost /]# ./usr/local/tomcat/ apache-tomcat-8.0.9/ bin/startup.sh

2.     配置

[root@localhost apache2]# vim/usr/local/apache2/conf/httpd.conf

 

LoadModule rewrite_modulemodules/mod_rewrite.so

LoadModule proxy_modulemodules/mod_proxy.so

LoadModule proxy_http_modulemodules/mod_proxy_http.so

把上面的注释去掉

修改httpd.conf文件中所有"AllowOverride None"为"AllowOverrideall",同时最好将Options也置为"all",否则可能会出问题。

#自定义URL转发

RewriteEngine On

#Proxyrequeston

RewriteRule^/(.*) http://192.168.93.147:8080/$1 [P,L]

或者

在httpd.conf中

打开注释Includeconf/extra/httpd-vhosts.conf

<VirtualHost *:80>

   ServerAdmin wangsai@kikuu.com

 #  DocumentRoot "/usr/local/apache2/docs/dummy-host.example.com"

   ServerName www.wangsai1111.com

   ServerAlias www.wangsai1111.com

   ErrorLog "logs/dummy-host.example.com-error_log"

   CustomLog "logs/dummy-host.example.com-access_log" common

   RewriteEngine On

   #Proxyrequest on

   RewriteRule ^/(.*) http://192.168.93.147:8080/$1 [P,L]

</VirtualHost>

访问www.wangsai1111.com转发向http://192.168.93.147:8080/

 

<VirtualHost *:80>//重定向

 ServerAdmin wangsai@kikuu.com

 ServerName wangsai.com

 ServerAlias wangsai.com

 ErrorLog "logs/dummy-host.example.com-error_log"

 CustomLog "logs/dummy-host.example.com-access_log" common

 RewriteEngine On

 RewriteCond %{HTTP_HOST} ^wangsai.com [NC]

 RewriteRule ^(.*) http://www.wangsai1111.com/ [L]

 

 </VirtualHost>

访问wangsai.com会重定向http://www.wangsai1111.com

3.     测试

访问192.168.93.147/examples后,自动跳转到Tomcat的192.168.93.147:8080/examples页面,返回的结果gzip经过压缩

 

五、   配置防盗链

(参考自己:http://blog.chinaunix.net/uid-21266384-id-186472.html)

1.确保apache已开启rewrite

2.在httpd.conf文件中添加

RewriteEngine On

RewriteCond %{HTTP_REFERER}!^http://XXX.com/.*$ [NC]

RewriteCond %{HTTP_REFERER}!^http://XXX.com$ [NC]

RewriteCond %{HTTP_REFERER}!^http://www.XXX.com/.*$ [NC]

RewriteCond %{HTTP_REFERER}!^http://www.XXX.com$ [NC]

#RewriteRule.*\.(gif|jpg|swf)$ http://www.XXX.com/nopic.png [R,NC]

RewriteRule.*\.(jpg|jpeg|gif|png|bmp|rar|zip|exe)$ http://www.xxx.com/err.htm [R,NC]

XXX表示你自已的网站域名

解释:只允许通过xxx才能下载down.apple.com下的文件。

解释:jpg|jpeg|gif|png|bmp|rar|zip|exe是要保护的内容,如果有盗链就跳转到这个错误链接:http://www.apple.com/err.htm

 

六、   配置防止爬虫

(参考自:http://blog.csdn.net/listen2you/article/details/61945408)

在httpd.conf文件中添加

#自定义防止爬虫

<Location />

SetEnvIfNoCase User-Agent"spider" bad_bot

BrowserMatchNoCase bingbot bad_bot

BrowserMatchNoCase Googlebot bad_bot

Order Deny,Allow

#下面是禁止soso的爬虫

Deny from 124.115.4. 124.115.0.64.69.34.135 216.240.136.125 218.15.197.69 155.69.160.99 58.60.13. 121.14.96.58.60.14. 58.61.164. 202.108.7.209

Deny from env=bad_bot

</Location>

 

 

 

 

集群:yum install epel-release 下载的epel-release-6-8.noarch.rpm  

 

 

 

0 0
原创粉丝点击