March 23, 2011
Memcache VS Memcached VS MemcacheDB
"1、 简单讲Memcache和Memcached都讲的是同一个开源项目http://memcached.org/,只不过Memcached一般指的是后台的cache server(其实也是一个客户端的,参考php手册).而Memcache指的访问cache server的客户端。Memcached提供了两种访问协议,ASCII和Binary。\n2、 MemcacheDB=Memcached+BerkeleyDB组成的轻量的持久数据库,与前两者是不同的两个东西。\n3、作为数据库就要讲究consistency,但是Memcached是一种分布式的缓存机制,因此并不严格要求consistency,而且实际上每个memcached server之间本身不通讯也不共享,所谓的分布式是由memcached的客户端程序来决定的。一般分布式算法采用基于server节点数的取余法,这种方法以node数为基础,因此增减服务器就会造成很大hash失效问题。所以改进的算法一般采用consistent hash算法,这种算法取消了以服务器节点数作为基数的理念,而是直接对服务器的节点进行hash,然后散布 …"
March 23, 2011
Memcache的安全性
"Memcache服务器端都是直接通过客户端连接后直接操作,没有任何的验证过程,这样如果服务器是直接暴露在互联网上的话是比较危险,轻则数据泄 露被其他无关人员查看,重则服务器被入侵,因为Mecache是以root权限运行的,况且里面可能存在一些我们未知的bug或者是缓冲区溢出的情况,这 些都是我们未知的,所以危险性是可以预见的。为了安全起见,我做两点建议,能够稍微的防止黑客的入侵或者数据的泄露。\n内网访问\n最好把两台服务器之间的访问是内网形态的,一般是Web服务器跟Memcache服务器之间。普遍的服务器都是有两块网卡,一块指向互联网,一块指向内 网,那么就让Web服务器通过内网的网卡来访问Memcache服务器,我们Memcache的服务器上启动的时候就监听内网的IP地址和端口,内网间的 访问能够有效阻止其他非法的访问。\nmemcached -d -m 1024 -u root -l 192.168.0.200 -p 11211 -c 1024 -P /tmp/memcached.pid\nMemcache服务器端设置监听通过内网的192.168.0.200的ip的11211端口,占 …"
March 23, 2011
squid中日志文件详解
"4.4 日志文件路径 我将在第13章讨论所有squid的日志细节。你现在你关注的唯一事情是,squid将它的日志放在何处。默认的日志目录是squid安装位置下的logs目录。例如,假如你在./configure时没有使用–prefix=选项,那么默认的日志文件路径是/usr/local/squid/var/logs.\n你必须确认日志文件所存放的磁盘位置空间足够。在squid写日志时如果接受到错误,它会退出和重启。该行为的主要理由应引起你的注意。squid想确认你不会丢失任何重要的日志信息,特别是你的系统被滥用或者被攻击时。\nsquid有三个主要的日志文件:cache.log,access.log,store.log.第一个文件即cache.log,包含状态性的和调试性的消息。当你刚开始运行squid时,你应密切的关注该文件。假如squid拒绝运行,理由也许会出现在cache.log文件的结尾处。在正常条件下,该文件不会变得很大。也请注意,假如你以-s选项来运行squid,重要的cache.log消息也可被送到你的syslog进程。通过使用cache_log指令,你可以改变该日志文件的路 …"
March 22, 2011
Windows不重启就使环境变量修改立即生效
"在“我的电脑”-\u0026gt;“属性”-\u0026gt;“高级”-\u0026gt;“环境变量”中增加或修改环境变量后,需重启系统才能使之生效。有没有什么方法可让它即时生效呢?下面介绍一种方法:\n一.以修改环境变量“PATH”为例,修改完成后,进入DOS命令提示符,输入:set PATH=C: ,关闭DOS窗口。\n二.再次打开DOS窗口,输入:echo %PATH% ,可以发现“我的电脑”-\u0026gt;“属性”-\u0026gt;“高级”-\u0026gt;“环境变量”中设置的 PATH 值已经生效。\n不用担心DOS窗口中的修改会影响环境变量的值,DOS窗口中的环境变量只是Windows环境变量的一个副本而已。但是对副本的修改却会引发Windows环境变量的刷新,这正是我们想要的!"
March 22, 2011
iisapp 命令 弹出 iisschlp.wsc [88,25] 属性值无效 progid
"在执行iisapp.vbs时,可能会提示如下错误:\nWindows Script Component – file://C:WINDOWSsystem32iisschlp.wsc [88,25] 属性值无效 : progid\n不要汗,解决也挺简单。\n原因是为了所谓的ASP安全,卸载了 shell.applaction 组件,也就是 wshom.ocx\n重新注册即可正常运行 iisapp.vbs\n注册命令:\nregsvr32 wshom.ocx\n用完以后,可以再把这个组件卸载掉:\nregsvr32 /u /s weboffice.ocx\n有关iisapp命令的用法请参考:"
March 21, 2011
redhat6下配置网卡ip地址
"①ifconfig命令 用ifconfig命令修改后重起服务配置将会丢失 给Eth0接口设置IP地址和子网掩码广播地址并激活:ifconfig eth0 192.168.1.155 netmask 255.255.255.0 broadcast 192.168.1.255 UP 更改Eth0口的MAC地址:ifconfig eth0 hw ehter 00:40:64:c8:03:04 一个网卡添加多个IP:ifoconfig eht0:1 192.168.1.156 ifconfig eth1:192.168.157 添加网关:route add default gw 192.168.1.1 动态获取IP:ifconfig eth0 -dynamic ②netconfig工具 netconfig命令后 可以选择静态还是动态获取IP,选择静态后 IP address:IP地址 netmask:子网掩码 default gateway (IP):网关 Primary nameserver: DNS地址 如果只想配置某一项 修改IP是动态还是动态获取netconfig …"
March 21, 2011
sqlserver2000附加数据库错误823的解决方案
"一、SQL-Server附加数据库时失败。 1、异常情况:服务器在正常运行的情况下突然断电,导致数据库文件损坏,具体表现是:数据库名后面有“(置疑)”字样。 2、异常分析:关于823错误的 SQL-SERVER 中的帮助:\n错误 823 严重级别 24 消息正文 在文件 “%4!” 的偏移量 %3! 处的 %2! 过程中,检测到 I/O 错误 %1!。\n解释 Microsoft SQL Server 在对某设备进行读或写请求时遇到 I/O 错误。该错误通常表明磁盘问题。但是,错误日志中在错误 823 之前记录的其它核心消息应指出涉及了哪个设备。 3、解决办法: 在SQL-Server企业管理器中,新建同名数据库(这里假设为Test)后,停止数据库,把损坏的数据库文件Data.mdf和Test_log.LDF覆盖刚才新建数据库目录下的Data.mdf和Test_log.LDF,同时删除Test_log.LDF文件;启动数据库服务,发现数据库名Test后面有“置疑”字样。不要紧,打开SQL自带查询分析器,分别执行如下SQL语句: 第一、\nexec sp_configure ‘allow …"
March 21, 2011
serv-u 无法开始服务器!服务器执行缺少?
"无法开始服务器!服务器执行缺少!\n点击连接时提示:\n无法连接到服务器!\n127.0.0.1端口43958\n已经在serv-u的文件夹属性里的安全选项卡上加上system(或其它操作用户)的完全控制权限.\n还是没有用呀?急!! 解决办法:\n将FTP的目录添加上administrators组权限,就可以了,serv-u的文件夹属性里的安全选项卡上加上system(或其它操作用户)的完全控制权限"
March 16, 2011
freebsd下修改mysql的默认数据目录datadir
"以前用windows的时候,发现直接修改my.ini文件里的datadir变量就可以了,现在发现在FreeBSD下直接修改这个变量值不行的,进到mysql后,用命令mysql\u0026gt;show variables like ‘datadir’ 查看的时候还是默认的/var/db/mysql这个路径.在网上查了一些资料,正解方法如下.\n数据目录为:/usr/local/mysql\n运行/usr/local/bin/mysql_install_db –datadir=/usr/local/mysql –user=mysql\nvi /etc/rc.conf,加入 mysql_enable=”YES”\nmysql_dbdir=”/usr/local/mysql”\n启动myql,现在原来账户的信息全部丢失.(不知道如果把原来的数据全部复制到这里行不行的,没有测试!)\n/usr/local/bin/mysqladmin -u root password ‘密码’\n#mysql -u root -p\n进入看一下\nshow variables like “datadir”\nOK, 出 …"
March 14, 2011
如何禁止搜索引擎蜘蛛爬行
"方法一、robots Meta标签\nrobots.txt是放在网站中,文件级的网络蜘蛛授权;而robots Meta标签是放在网页中,一般用于部分网页需要单独设置的情况下。两者的功能是一样的。 Meta robots标签必须放在和之间,格式:\ncontent中的值决定允许抓取的类型,必须同时包含两个值:是否允许索引(index)和是否跟踪链接(follow,也可以理解为是否允许沿着网页中的超级链接继续抓取)。共有4个参数可选,组成4个组合: index,follow:允许抓取本页,允许跟踪链接。 index,nofollow:允许抓取本页,但禁止跟踪链接。 noindex,follow:禁止抓取本页,但允许跟踪链接。 noindex,nofllow:禁止抓取本页,同时禁止跟踪本页中的链接。 以上1和4还有另一种写法: index,follow可以写成all,如:\nnoindex,nofollow可以写成none,如:\n方法二、创建robots.txt文本 对于robots.txt文本的相关概念或者是协议我就不提了,主要是直接告诉大家这个文件的写法。 文件应该同时包含2个 …"