阿里云服务器配置与性能优化

阿里云我问过很多站长都说非常的不错了,不管是网速还是从性能都比其它主机要好,但阿里云就是贵那么一点了,下面小编来给各位介绍阿里云服务器配置与性能优化

更换阿里云服务器有一阵了,相对于我以前的虚拟主机不是一个档次。就比如说我在虚拟主机上被人放了后门文件,我把虚拟主机上的文件传到云服务器的时侯云服务器立马就报警存在漏洞,最主要的还是可控性。

一些相当配置记录下:

一、配置Nginx处理日志

1、设置nginx日志格式(data/server/nginx/conf/nginx.conf)

log_format main '$remote_addr - $remote_user [$time_local] "$request" '

'$status $body_bytes_sent "$http_referer" '

'"$http_user_agent" "$http_x_forwarded_for"';

2、配置Nginx日志按天截断

2.1、日志logrotate

/data/log/nginx/access/*.log {

daily

#dateext

rotate 1

missingok

ifempty

nocompress

olddir /data/log/nginx/access/days

sharedscripts

postrotate

[ ! -f /data/server/nginx/logs/nginx.pid ] || kill -USR1 `cat /data/server/nginx/logs/nginx.pid`

endscript

}

取文件名为nginx,存放在/etc/logrotate.d目录下。logrotate方式比mv有很多优势,自行google.不多说。

2.2、编写日志处理脚本

#!/bin/bash

/usr/sbin/logrotate -vf /etc/logrotate.d/nginx

time=$(date -d "yesterday" +"%Y-%m-%d")

cd /data/log/nginx/access/days

for i in $(ls ./ | grep "^/(.*/)/.[[:digit:]]$")

do

mv ${i} ./$(echo ${i}|sed -n 's/^/(.*/)/./([[:digit:]]/)$//1/p')-$(echo $time)

done

for i in $(ls ./ | grep "^/(.*/)/-/([[:digit:]-]/+/)$")

do

tar zcvf ${i}.tar.gz ./${i}

/bin/rm -rf ./${i}

done

find /data/log/nginx/access/* -name "*.tar.gz" -mtime 30 -type f -exec /bin/rm -rf {} /;

简单说明:执行Logrotate,把日志存放到/var/log/nginx/days目录,文件名末尾加上昨天的日期,打包成tar.gz格式,超过30天的文件自动删除

2.3、向crontab中添加定时任务

crontab -e

1 0 * * * /data/shs/nginxlogcut.sh > /dev/null 2>&1

二、日志分析

1、AWStats安装

如果YUM里已经添加了rpmforge的源就比较简单了,直接yum install即可,如果没有:

yum install perl-libwww-perl.noarch

wget http://prdownloads.sourceforge.net/awstats/awstats-7.0-1.noarch.rpm

rpm -ivh awstats-7.0-1.noarch.rpm

cd /usr/local/awstats/tools/

./awstats_configure.p

2、Awstats配置

因为往往要分析多个站点的日志,为了简化操作

cp awstats.model.conf common.conf

修改其中几个选项:

#vi common.conf

DNSLookup=0 #关闭DNSLookup可以提升99%的效率

DirData="/data/awstats/data" #指定统计数据存放的目录

SkipFiles="REGEX[^*/.gif] REGEX[^*/.jpg] REGEX[^*/.css] REGEX[^*/.js]" #不分析图片/样式表和js文件

NotPageList="css js class gif jpg jpeg png bmp ico rss xml swf" #非页面文件

LoadPlugin="tooltips" #显示每个统计项目的提示

LoadPlugin="decodeutfkeys" #UTF8编码问题

LoadPlugin="qqhostinfo" #加装的利用纯真IP库判断方可归属地

修改LIMITFLUSH加快处理速度,有效提高统计的速度(减少磁盘IO),并避免按月汇总数据导致的统计文件过大

#vi /usr/local/awstats/wwwroot/cgi-bin/awstats.pl

$LIMITFLUSH =

50000; # Nb of records in data arrays after how we need to flush data on disk

3、我的统计实例

#vi /etc/awstats/awstats.www.geekso.com.conf

Include "common.conf"

LogFormat=1 #指定日志格式,×nix为1,iis为2

LogFile="zcat /data/log/nginx/access/days/geekso.log-%YYYY-24-%MM-24-%DD-24.tar.gz |"

#LogFile="/var/log/iislogs/v/ex%YY-24%MM-24%DD-24.log"

#LogFile="/var/log/nginx/crsay.geekso.log-%YYYY-24-%MM-24-%DD-24"

SiteDomain="www.geekso.com"

HostAliases="geekso.com"

DefaultFile="index.html"

DirData="/data/www/awstats/data"

AllowAccessFromWebToAuthenticatedUsersOnly=1

AllowAccessFromWebToFollowingAuthenticatedUsers="geekso"

3、编写日志分析脚本

#!/bin/bash

ilog=/data/www/awstats/logcron/awstats_cron.log

awscripts=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl

awpages=/usr/local/awstats/tools/awstats_buildstaticpages.pl

echo "">>$ilog

echo Starting Awstats on: $(date) >>$ilog

perl $awpages -update -config=www.geekso.com -lang=cn -dir=/data/www/awstats/geekso -awstatsprog=$awscripts

#perl $awscripts -update -config=site2

#perl $awscripts -update -config=site2 -databasebreak=day

#perl $awscripts -update -config=site3

#perl $awscripts -update -config=site3 -databasebreak=day

echo Ending Awstats on: $(date) >>$ilog

echo "------------------------------" >>$ilog

4、向crontab中添加定时任务

#crontab -e

1 1 * * * /data/shs/awstats.sh > /dev/null 2>&1

附:

AWStats统计指标说明:

参观者:按来访者不重复的IP统计,一个IP代表一个参观者;

参观次数:一个参观者可能1天之内参观多次(比如:上午一次,下午一次),所以按一定时间内(比如:1个小时),不重复的IP数统计,参观者 的访问次数;

网页数:不包括图片,CSS, JavaScript文件等的纯页面访问总数,但如果一个页面使用了多个帧,每个帧都算一个页面请求;

文件数:来自浏览器客户端的文件请求总数,包括图片,CSS,JavaScript等,用户请求一个页面是,如果页面中包含图片等,所以对服 务器会发出多次文件请求,文件数一般远远大于文件数;

字节:传给客户端的数据总流量;

来自REFERER中的数据:日志中的参考(REFERER)字段,记录了访问相应网页之前地址,因此如果用户是通过搜索引擎的搜索结果点击 进入网站的,日志中就会有用户在相应搜索引擎的查询地址,这个地址中就可以通过解析将用户查询使用的关键词提取出来。

三、防止跨目录访问

你的服务器www目录下有多个网站,当某一个网站被人攻进去后,如果你没有做跨目录访问,那么他都能看到www目录下的所有文件,甚至服务器上的系统目录文件。

做法是在nginx下的conf目录下为每个站点的conf设置open_basedir访问的目录

fastcgi_param PHP_VALUE "open_basedir=$document_root:/tmp/:/data/www/geekso/";

四、禁用危险的函数

php.ini建议禁止的函数如下:

disable_functions = pcntl_alarm, pcntl_fork, pcntl_waitpid, pcntl_wait, pcntl_wifexited, pcntl_wifstopped, pcntl_wifsignaled, pcntl_wexitstatus, pcntl_wtermsig, pcntl_wstopsig, pcntl_signal, pcntl_signal_dispatch, pcntl_get_last_error, pcntl_strerror, pcntl_sigprocmask, pcntl_sigwaitinfo, pcntl_sigtimedwait, pcntl_exec, pcntl_getpriority, pcntl_setpriority, eval, popen, passthru, exec, system, shell_exec, proc_open, proc_get_status, chroot, chgrp, chown, ini_alter, ini_restore, dl, pfsockopen, openlog, syslog, readlink, symlink, popepassthru, stream_socket_server, fsocket, chdir

五、PHP Zend Opcache 安装

opcache包下载地址:http://pecl.php.net/package/ZendOpcache

1、wget http://pecl.php.net/get/zendopcache-7.0.2.tgz

tar zxvf zendopcache-7.0.2.tgz

cd zendopcache-7.0.2

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make

make install

2、修改PHP.INI配置文件,在配置文件末尾添加:

[opcache]

zend_extension= "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/opcache.so"

opcache.memory_consumption=128

opcache.interned_strings_buffer=8

opcache.max_accelerated_files=4000

opcache.revalidate_freq=60

opcache.fast_shutdown=1

opcache.enable_cli=1

opcache.enable=1

保存后,重启服务。查看phpinfo是否加载了zendopcache

(0)

相关推荐

  • 阿里云服务器怎么购买

    上回我们我讲要建立一个网站的基础是域名和空间服务器,域名我们已经注册好了,那么今天我们就来讲下阿里云服务器怎么购买,阿里云服务器配置如何选择吧. 阿里云服务器购买步骤 01 首先登录阿里云官方网站,没 ...

  • 阿里云代理:阿里云主机Linux服务器配置详细步骤

    下面是阿里云主机Linux服务器配置详细步骤,如果你正在使用阿里云主机可进入参考一下配置步骤. 一提到云主机,大家肯定熟知国内最知名品牌--阿里云了,后来居上的它受到不少的站长所追捧,它的稳定与服务让 ...

  • 佳域G4最新阿里云OSV2.1刷机包优化流畅又省电

    操作方法 01 佳域G4最新阿里云OS V2.1刷机包 深度清理优化.流畅又省电 ==================☆详细特性☆=================== Rom简单介绍 移植卓普C2的 ...

  • 【优化实战一】阿里云小内存服务器的精简和优化

    前天购进了一台阿里云的服务器最低配的用来放IT漫步网站,只有512M内存.这时候选择一个合适优化方案并且尽可能的减少内存就很关键了. 操作方法 01 选择合适的操作系统.因为阿里云的debian系统无 ...

  • 阿里云使用Linux系统有哪些问题

    ECS Linux服务器发现未授权登录用户 ECS Linux服务器配置yum源 ECS Linux下解压rar格式的压缩文件 Linux查看实时带宽流量情况 ECS Linux开启swap(虚拟内存 ...

  • 阿里云服务器怎么样?最低配置试评结果介绍

    阿里云服务器怎么样?具体要用过才知道,小编为此买了个最低配的云服务器测试了一下。 具体配置:1核心cpu,512mb内存,0g数据盘,1m带宽,华东青岛节点,centos 6.3 64位系统 69元一 ...

  • 阿里云ACE的应用模板移植

    Aliyun Cloud Engine(以下简称ACE)是基于弹性计算平台的可线性伸缩的应用托管运行环境。应用模板是我们借鉴了业内的App Store的概念,简化用户创建应用的步骤,方便应用的推广。本 ...

  • "阿里云监控Agent"软件使用许可协议

    欢迎使用“阿里云监控Agent”软件产品。以下所述条款和条件即构成您与阿里云计算有限公司(以下简称“阿里云”)就“阿里云监控Agent”软件使用许可所达成的协议(以下简称“本协议”)。一旦您使用了“阿 ...

  • 阿里云主机是什么

    阿里云主机是什么 阿里云提供的云主机服务是基于阿里云自主研发的飞天大规模分布式计算系统,通过虚拟化技术整合IT资源,为各行业提供互联网基础设施服务。云服务器具有自助管理、数据安全保障、自动故障恢复和防 ...