技术研究
如何解决CentOS 5 host命令无效(-bash: host: command not found)的问题
当我们检查DNS设置的时候常常会用到host命令,但Centos5默认安装是没有这个命令的。
当显示-bash: host: command not found的时候,我们就需要安装对应的包了
host这个程序是 bind-utils包里面的
所以要先安装 bind-utils
yum install bind-utils 就ok了
如何设置你的CentOS的时间(如何与时间服务器同步)
安装好CentOS,时间默认不是我们所在的东八区,导致上面运行的游戏,每天下午3点才开始发放当天礼包。
我们可以手动设置时间,但最简单办法,是跟时间服务器同步。
这里我介绍几个靠谱的时间服务器地址
第一个当然是国内官方:中国国家授时中心:
http://www.time.ac.cn/stime.asp
其他的:
time.nist.gov
ntp.fudan.edu.cn (复旦) )(国内用户推荐使用此服务器)
timekeeper.isi.edu
subitaneous.cpsc.ucalgary.ca
usno.pa-x.dec.com
time.twc.weather.com
swisstime.ethz.ch
ntp0.fau.de
ntp3.fau.de
time-a.nist.gov
time-b.nist.gov
time-nw.nist.gov
nist1-sj.glassey.com
在CentOS下具体操作是:
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ntpdate ntp.fudan.edu.cn
如果没有安装ntpdate的可以yum一下:
yum install ntp
如何选择最适合的美国服务器
国外服务器都是10M独享或者100M独享,甚至还有1000M独享的,不存在共享问题,除非是VPS都是共享的。美国机房速度和稳定方面都非常的有保证。在选择海外服务器最好找一些知名的海外IDC服务商。
1、如果你的网站有大量的图片可以找一个美国速度快点的机房,不需要有硬防的机房才能保证速度通畅。
推荐机房:美国达拉斯机房是全美乃至全球硬软件最强大的机房。美国达拉斯机房共有6个经SAS 70 TypeII 认证的数据中心(2 个在休斯敦,4个在达拉斯)。机房总面积超过180000平方英尺。美国达拉斯机房和多个一线电信运营商合作,接入AT&T,NTT/VERIO 、AboveNet等多条线路,此外与美国圣安娜机房、东部华盛顿机房10G点对点ptp(peering to peering)连接。达拉斯机房速度快,线路稳定,响应火速,机房主要为对服务器稳定要求相当高的大中型企业客户或中小外贸企业客户提供。所有服务器自动监控,工程师能最先发现问题并最快修复,把客户损失降低至0。机房24*365小时不间断提供重启和监控服务,为您扫除服务器租用后顾之忧,让您安心、全心、放心的开拓海外市场
2、如果你是做游戏的或者对安全特别高的,一般都会放高防抗攻击机房。
推荐机房:①:美国亚特兰大机房位于美国东部最大工商业城市亚特兰大,是首批经SAS 70 Type II认证机房之一。亚特兰大机房总面积约75000平方英尺。从地理优势上说,东部机房受自然灾害的影响比西部小。美国亚特兰大机房网络多线路网络接入,一线线路有Internap (10 Gbps)、 BTN (2 Gbps)、nLayer (2 Gbps)、Mzima (2 Gbps)、Telia (2 Gbps)。机房特点:N2+1并联冗余电源;DDOS防护 + 最强大入侵检测系统;Cisco BGP配置路由交换机,智能选择最快最稳路由;工程师提供24*365小时不间断重启和硬软件支持服务,为您扫除服务器租用后顾之忧。 ②:美国加州机房位于美国西部加利福尼亚州(弗里蒙特市)。美国加州机房多条一线线路接入,速度快,线路稳定,IP段多,性价比高。加州机房有游戏专用线路和企业专用线路,互不干涉。加州机房工程师提供24*365小时不间断重启和硬软件支持服务。
3、如果你的网站还是一个小型的网站或者处于起步期,完全可以考虑经济、适用、廉价的美国服务器。
推荐机房:美国哥伦布机房多线路接入Level3、 Global [...]
javascript里的document.all与document.getElementById
从IE4开始IE的object model增加了document.all[],它是文档中所有标签组成的一个数组变量,包括了文档对象中所有元素。因此document.all[]这个数组可以访问文档中所有元素。
而getElementById()可以访问DOCUMENT中的某一特定元素,顾名思义,就是通过ID来取得元素,所以只能访问设置了ID的元素。比如说有一个DIV的ID为docid:
那么就可以用getElementById(”docid”)来获得这个元素。
但实际应用的时候,兼容性却大不一样。有人说ocument.all是个ie only的方法,所以我们必须注意使用
1.页面控件一定要加id。
2.操纵控件最好用document.getElementById
3.推荐几个其他的办法
getElementsByTagName(”*”) 可以得到得到所有元素的集合
getElementsByName 可以得到按name属性得到某一元素
如何解决PHP Error: Permission denied in Unknown on line 0
今天在UCHOME的时候,自己新建了个文件,并上传到新的服务器,可是却莫名其妙的出现这样的出错:
PHP Warning: Unknown(/*****/***.php): failed to open stream: Permission denied in Unknown on line 0
开始以为是自己uchome的程序有问题。经过检查,确认没有程序错误。这个错误提示也太模糊啦,初的一看,真让人一头雾水,不知道从何下手。只好在网上找资料。原来根据错误的提示“Permission denied”,这个可能是文件权限的问题,于是修改权限为777,问题解决。
Windows蓝屏代码含义和解决方案
1、0×0000000A:IRQL_NOT_LESS_OR_EQUAL
◆错误分析:主要是由问题的驱动程序、有缺陷或不兼容的硬件与软件造成的. 从技术角度讲. 表明在内核模式中存在以太高的进程内部请求级别(IRQL)访问其没有权限访问的内存地址.
◇解决方案:请用前面介绍的解决方案中的2、3、5、8、9方案尝试排除.
2、0×00000012:TRAP_CAUSE_UNKNOWN
◆错误分析:如果遇到这个错误信息, 那么很不幸, 应为KeBudCheck分析的结果是错误原因
未知.
◇解决方案:既然微软都帮不上忙, 就得靠自己了, 请仔细回想这个错误是什么时候出现的; 第一次发生时你对系统做了哪些操作; 发生时正在进行什么操作. 从这些信息中找出可能的原因, 从而选择相应解决方案尝试排除.
3、0×0000001A:MEMORY_MANAGEMENT
◆错误分析:这个内存管理错误往往是由硬件引起的, 比如: 新安装的硬件、内存本身有问题等.
◇解决方案:如果是在安装Windows时出现, 有可能是由于你的电脑达不到安装Windows的最小内存和磁盘要求.
4、0×0000001E:KMODE_EXCEPTION_NOT_HANDLED
◆错误分析:Windows内核检查到一个非法或者未知的进程指令, 这个停机码一般是由问题的内存或是与前面0×0000000A相似的原因造成的.
◇解决方案:
(1)硬件兼容有问题:请对照前面提到的最新硬件兼容性列表, 查看所有硬件是否包含在该列表中.
(2)有问题的设备驱动、系统服务或内存冲突和中断冲突: 如果在蓝屏信息中出现了驱动程序的名字, 请试着在安装模式或者故障恢复控制台中禁用或删除驱动程序, 并禁用所有刚安装的驱动和软件. 如果错误出现在系统启动过程中, 请进入安全模式, 将蓝屏信息中所标明的文件重命名或者删除.
(3)如果错误信息中明确指出Win32K.sys: 很有可能是第三方远程控制软件造成的, 需要从故障恢复控制台中将对该软件的服务关闭.
(4)在安装Windows后第一次重启时出现:最大嫌疑可能时系统分区的磁盘空间不足或BIOS兼容有问题.
(5)如果是在关闭某个软件时出现的:很有可能时软件本省存在设计缺陷, 请升级或卸载它.
5、0×00000023:FAT_FILE_SYSTEM
0×00000024:NTFS_FILE_SYSTEM
◆错误分析:0×00000023通常发生在读写FAT16或者FAT32文件系统的系统分区时, 而
0×00000024则是由于NTFS.sys文件出现错误(这个驱动文件的作用是容许系统读写使用
NTFS文件系统的磁盘). 这两个蓝屏错误很有可能是磁盘本身存在物理损坏, 或是中断要求封包(IRP)损坏而导致的. 其他原因还包括:硬盘磁盘碎片过多; 文件读写操作过于频繁, 并且数据量非常达或者是由于一些磁盘镜像软件或杀毒软件引起的.
◇解决方案:
第一步:首先打开命令行提示符, 运行”Chkdsk /r”(注:不是CHKDISK, 感觉象这个, 但是……)命令检查并修复硬盘错误, 如果报告存在怀道(Bad Track), 请使用硬盘厂商提供的检查工具进行检查和修复.
第二步:接着禁用所有即使扫描文件的软件, 比如:杀毒软件、防火墙或备份工具.
第三步:右击C:\winnt\system32\drivers\fastfat.sys文件并选择”属性”, 查看其版本是否与当前系统所使用的Windows版本相符.(注:如果是XP, 应该是C:\windows\system32
\drivers\fastfat.sys)
第四步:安装最新的主板驱动程序, 特别IDE驱动. 如果你的光驱、可移动存储器也提供有驱动程序, 最好将它们升级至最新版.
6、0×00000027:RDR_FILE_SYSTEM
◆错误分析:这个错误产生的原因很难判断, 不过Windows内存管理出了问题很可能会导致这个停机码的出现.
◇解决方案:如果是内存管理的缘故, 通常增加内存会解决问题.
7、0×0000002EATA_BUS_ERROR
◆错误分析:系统内存存储器奇偶校验产生错误, 通常是因为有缺陷的内存(包括物理内存、二级缓存或者显卡显存)时设备驱动程序访问不存在的内存地址等原因引起的. 另外, 硬盘被病毒或者其他问题所损伤, [...]
windows蓝屏的处理方法
Windows 2K/XP蓝屏信息非常多, 为大家提供了一些常规的解决方案, 在遇到蓝屏错误时, 应先对照这些方案进行排除.
1.重启
有时只是某个程序或驱动程序一时犯错, 重启后他们会改过自新.(注意:此时参见7.查询停机码)
2.新硬件
首先, 应该检查新硬件是否插牢, 这个被许多人忽视的问题往往会引发许多莫名其妙的故障. 如果确认没有问题, 将其拔下, 然后换个插槽试试, 并安装最新的驱动程序. 同时还应对照微软网站的硬件兼容类别检查一下硬件是否与操作系统兼容. 如果你的硬件没有在表中, 那么就得到硬件厂商网站进行查询, 或者拨打他们的咨询电话.
Windows XP的硬件兼容列表
Windows 2K的硬件兼容类别
3.新驱动和新服务
如果刚安装完某个硬件的新驱动, 或安装了某个软件, 而它又在系统服务中添加了相应项目(比如:杀毒软件、CPU降温软件、防火墙软件等), 在重启或使用中出现了蓝屏故障, 请到安全模式来卸载或禁用它们.
4.检查病毒
比如冲击波和振荡波等病毒有时会导致Windows蓝屏死机, 因此查杀病毒必不可少. 同时一些木马间谍软件也会引发蓝屏, 所以最好再用相关工具进行扫描检查.
5.检查BIOS和硬件兼容性
对于新装的电脑经常出现蓝屏问题, 应该检查并升级BIOS到最新版本, 同时关闭其中的内存相关项, 比如:缓存和映射. 另外, 还应该对照微软的硬件兼容列表检查自己的硬件. 还有就是, 如果主板BIOS无法支持大容量硬盘也会导致蓝屏, 需要对其进行升级.
小提示:
BIOS的缓存和映射项
Video BIOS Shadowing (视频BIOS映射)
Shadowing address ranges(映射地址列)
System BIOS Cacheable(系统BIOS缓冲)
Video BIOS Cacheable(视频BIOS缓冲)
Video RAM Cacheable(视频内存缓冲)
6.检查系统日志
在开始–>菜单中输入:EventVwr.msc, 回车出现”事件查看器”, 注意检查其中的”系统日志”和”应用程序日志”中表明”错误”的项.
7.查询停机码
把蓝屏中密密麻麻的E文记下来, 接着到其他电脑中上网, 进入微软帮助与支持网站http://support.microsoft.com?, 在左上角的”搜索(知识库)”中输入停机码, 如果搜索结果没有适合信息, [...]
如何用css把页面变灰,寄托我们的哀思
方法有很多种,这里做个总结
第一:
最快速度把自己网站变灰,只支持IE~
在CSS文件或style中加入
*{filter:gray; color:gray;}
第二:
html{filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);}
这个比 filter:gray; 好,可解决与 position: relative; 的冲突,加在 css 第一行即可
第三:
指定flash层样式,加入:*{filter: Gray;}
有一些网站FLASH动画的颜色不能被CSS滤镜控制,可以在FLASH代码的 和 之间插入:
windows2003下apache的“指定的网络名不再可用。winnt_accept: Asynchronous AcceptEx failed.”的解决办法
这几天windows2003的apache习惯性的很慢。你会发现的你的机器没怎么动,就是apache一下子占了很多内存,不一会儿就不行了。必须重起机器。找了很多方向,甚至我认为机器的dns出问题了,但怎么也找不到点子上。仔细检查了下apache的日志在error.log里也报错:[warn] (OS 64)指定的网络名不再可用。 : winnt_accept: Asynchronous AcceptEx failed.
查了很多资料,原来是跟windows的服务冲突了,汗。
先上查到的解决办法:
在httpd.conf文件中添加 Win32DisableAcceptEx 标记,如下:
ThreadsPerChild 150
MaxRequestsPerChild 10000
Win32DisableAcceptEx
这样可以允许并发连接更大一些。同时性能上也不会有明显的降低。
如果还是不行,进行以下操作:
1、网上邻居->本地连接->属性->internet协议(TCP/IP)->属性->高级->wins标签->去掉启用LMhosts查询前的
勾.
2、控制面版->windows防火墙->高级标签->本地连接设置->服务的标签里勾选安全Web服务器(HTTPS)。
3、然后退出Apache,再打开启动就可以了 ,一开始我没有退出,直接在那重启,就是不可以,一定要先停止,在开启即可
原因分析:
AcceptEx()是一个微软的WinSock2 API ,通过使用BSD风格的accept() API提供了性能改善。一些流行的Windows产品,比如防病毒软件或虚拟专用网络软件,会干扰AcceptEx()的正确操作。我们需要禁止使用AcceptEx() 。
ecshop下can’t parse to JSON出错的一种解决思路
ecshop是一个php下非常常用的开源商城系统,他的ajax的功能非常强大,几乎所有的操作都涉及到了异步操作。
正因为如此,他的模版制作门槛就有点高,你会时不时地发现,这个不显示了,那个不能操作了。除非你用默认模版,不然有你搞得。
根据我的经验,很多情况,如果我们发现功能不能用,该有反应的地方突然没有反应了,我们应该先检查你的模板文件里是不是包含了以下这段代码
var process_request = “正在处理您的请求…”;
这几乎是最常见的AJAX错误,也是发生最多的。
不过这次我做要提到的解决思路要复杂很多。这个错误不常发生,却很难找到解决办法。
当我们点击购买按钮时候,这个商品应该是自动进入购物车,但动作没有响应。如果你在ie下,会出现JS报错。
Exception thrown and not caught (抛出的异常没有被接住)
如果我们用工具调试,会发现类似这样的报错
Fatal error: Bad string at offset 2: {\”spec\”:[],\”goods_id\”:4154,\”number\”:1,\”parent\”:0}
联动文章:http://bbs.ecshop.com/thread-109570-1-1.html (他遇到的问题很我类似)
我先说解决办法:从报错,我们可以看到错误出在了第二反斜杠上。默认情况下,PHP 指令 magic_quotes_gpc 为 on,对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。而ECSHOP没有对POST的数据进行过滤。
简单的解决办法: 在FLOW.php文件的57行,像我这样加上过滤
$_POST['goods'] = stripslashes(json_str_iconv($_POST['goods']));
我中间我一度认为是ecshop的transport和jquery冲突,因为我把ECSHOP做为一个插件插到了PHPCMS2008中。唉,走了很多弯路,做了很多调试才发现这个小Bug的,希望大家不要走我的老路。
联动讨论:http://bbs.ecshop.com/thread-76312-1-1.html


