November 11, 2008
如何在Oracle 中实现类似自动增加 ID 的功能?
"\u003cp\u003e我们经常在设计数据库的时候用一个系统自动分配的ID来作为我们的主键,但是在ORACLE 中没有这样的 功能,我们\u003c/p\u003e\n\u003cp\u003e可以通过采取以下的功能实现自动增加ID的功能\u003c/p\u003e\n\u003cp\u003e 1.首先创建 sequence\u003c/p\u003e\n\u003cp\u003e create sequence seqmax increment by 1\u003c/p\u003e\n\u003cp\u003e 2.使用方法\u003c/p\u003e\n\u003cp\u003e select seqmax.nextval ID from dual\u003c/p\u003e\n\u003cp\u003e 就得到了一个ID\u003c/p\u003e\n\u003cp\u003e 如果把这个语句放在 触发器中,就可以实现 和 ms sql 的自动增加ID相同的功能!\u003c/p\u003e"
November 7, 2008
搭建一个大型网站架构的实验环境(Squid缓存服务器篇)
"\u003cp\u003e六、squid缓存服务器的配置\nsquid缓存服务器在这个实验环境中有两台(192.168.10.30,192.168.10.31)做成squid集群,我们首先安装一台,然后复制一台,再做配置,这样省事,哈!\nsquid01服务器网络配置\n# ee /etc/rc.conf\nifconfig_lnc0=”inet 192.168.10.30 netmask 255.255.255.0″\ndefaultrouter=”192.168.10.10″\nhostname=”squid01.rd.bj”\u003c/p\u003e\n\u003cp\u003e# ee /etc/hosts\n192.168.10.30 squid01.rd.bj # ee /etc/resolv.conf\nnameserver 192.168.10.40\u003c/p\u003e\n\u003cp\u003e网络配置好后,我们开始安装squid,先把的藏身处找到:\n# whereis squid30\nsquid30: /usr/ports/www/squid30\n# cd /usr/ports/www/squid30\n# make config #配置安装选项\n\u003ca href=\"/wp-content/uploads/2008/11/a.jpg\"\u003e\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/y1p7KaqJhsBYWiIJs9vizLd9gLTa-9GQEXfT3JxNOiO-0JPTQFirWsqM_NWAtZWWSHEZgzHqyfFbJTSm5zK4psu5pLQ42U6Kuiz.jpeg\" alt=\"sq_1\"\u003e\u003c/a\u003e\n# make showconfig # …\u003c/p\u003e"
November 6, 2008
右键“新建”菜单中没有“文本文档”的解决方法
"\u003cp\u003e 这是我遇到的问题,费了一番麻烦才搞定。开始很多人提供的直接修改注册表的方法没用,用windows优化大师、超级兔子也不行,今天找到解决方法了。\u003c/p\u003e\n\u003cp\u003e 把以下内容存入记事本:\u003c/p\u003e\n\u003cp\u003eWindows Registry Editor Version 5.00\u003c/p\u003e\n\u003cp\u003e[HKEY_CLASSES_ROOT.txt]\n@=”txtfile”\n“Content Type”=”text/plain”\u003c/p\u003e\n\u003cp\u003e[HKEY_CLASSES_ROOT.txt\\ShellNew]\n“NullFile”=””\u003c/p\u003e\n\u003cp\u003e[HKEY_CLASSES_ROOT\\txtfile]\n@=”文本文档”\u003c/p\u003e\n\u003cp\u003e[HKEY_CLASSES_ROOT\\txtfile\\shell]\u003c/p\u003e\n\u003cp\u003e[HKEY_CLASSES_ROOT\\txtfile\\shell\\open]\u003c/p\u003e\n\u003cp\u003e[HKEY_CLASSES_ROOT\\txtfile\\shell\\open\\command]\n@=”NOTEPAD.EXE %1″\u003c/p\u003e\n\u003cp\u003e然后保存好,修改后缀名,把.TXT改成.REG。双击导入到注册表中,就可以了。\u003c/p\u003e"
November 4, 2008
JavaScript isNaN() 函数
"\u003ch2 id=\"义和用法\"\u003e义和用法\u003c/h2\u003e\n\u003cp\u003eisNaN() 函数用于检查其参数是否是非数字值。\u003c/p\u003e\n\u003ch3 id=\"语法\"\u003e语法\u003c/h3\u003e\n\u003cpre tabindex=\"0\"\u003e\u003ccode\u003eisNaN(x)\n\u003c/code\u003e\u003c/pre\u003e\u003cp\u003e参数\u003c/p\u003e\n\u003cp\u003e描述\u003c/p\u003e\n\u003cp\u003ex\u003c/p\u003e\n\u003cp\u003e必需。要检测的值。\u003c/p\u003e\n\u003ch3 id=\"返回值\"\u003e返回值\u003c/h3\u003e\n\u003cp\u003e如果 x 是特殊的非数字值 NaN(或者能被转换为这样的值),返回的值就是 true。如果 x 是其他值,则返回 false。\u003c/p\u003e\n\u003ch3 id=\"说明\"\u003e说明\u003c/h3\u003e\n\u003cp\u003eisNaN() 函数可用于判断其参数是否是 NaN,该值表示一个非法的数字(比如被 0 除后得到的结果)。\u003c/p\u003e\n\u003cp\u003e如果把 NaN 与任何值(包括其自身)相比得到的结果均是 false,所以要判断某个值是否是 NaN,不能使用 == 或 === 运算符。正因为如此,isNaN() 函数是必需的。\u003c/p\u003e\n\u003ch2 id=\"提示和注释\"\u003e提示和注释\u003c/h2\u003e\n\u003cp\u003e提示:isNaN() 函数通常用于检测 parseFloat() 和 parseInt() 的结果,以判断它们表示的是否是合法的数字。当然也可以用 isNaN() 函数来检测算数错误,比如用 0 作除数的情况。\u003c/p\u003e\n\u003ch2 id=\"实例\"\u003e实例\u003c/h2\u003e\n\u003cp\u003e在本例中,我们将使用 isFinite() 在检测无穷数:\u003c/p\u003e\n\u003cpre tabindex=\"0\"\u003e\u003ccode\u003e\u0026lt;script type=\u0026#34;text/javascript\u0026#34;\u0026gt;\n\ndocument.write(isFinite(123)) …\u003c/code\u003e\u003c/pre\u003e"
November 4, 2008
JavaScript push() 方法
"\u003ch2 id=\"定义和用法\"\u003e定义和用法\u003c/h2\u003e\n\u003cp\u003epush() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。\u003c/p\u003e\n\u003ch3 id=\"语法\"\u003e语法\u003c/h3\u003e\n\u003cpre tabindex=\"0\"\u003e\u003ccode\u003earrayObject.push(newelement1,newelement2,....,newelementX)\n\u003c/code\u003e\u003c/pre\u003e\u003cp\u003e参数\u003c/p\u003e\n\u003cp\u003e描述\u003c/p\u003e\n\u003cp\u003enewelement1\u003c/p\u003e\n\u003cp\u003e必需。要添加到数组的第一个元素。\u003c/p\u003e\n\u003cp\u003enewelement2\u003c/p\u003e\n\u003cp\u003e可选。要添加到数组的第二个元素。\u003c/p\u003e\n\u003cp\u003enewelementX\u003c/p\u003e\n\u003cp\u003e可选。可添加多个元素。\u003c/p\u003e\n\u003ch3 id=\"返回值\"\u003e返回值\u003c/h3\u003e\n\u003cp\u003e把指定的值添加到数组后的新长度。\u003c/p\u003e\n\u003ch3 id=\"说明\"\u003e说明\u003c/h3\u003e\n\u003cp\u003epush() 方法可把它的参数顺序添加到 arrayObject 的尾部。它直接修改 arrayObject,而不是创建一个新的数组。push() 方法和 pop() 方法使用数组提供的先进后出栈的功能。\u003c/p\u003e\n\u003ch2 id=\"提示和注释\"\u003e提示和注释\u003c/h2\u003e\n\u003cp\u003e注释:该方法会改变数组的长度。\u003c/p\u003e\n\u003cp\u003e提示:要想数组的开头添加一个或多个元素,请使用 unshift() 方法。\u003c/p\u003e\n\u003ch2 id=\"实例\"\u003e实例\u003c/h2\u003e\n\u003cp\u003e在本例中,我们将创建一个数组,并通过添加一个元素来改变其长度:\u003c/p\u003e\n\u003cpre tabindex=\"0\"\u003e\u003ccode\u003e\u0026lt;script type=\u0026#34;text/javascript\u0026#34;\u0026gt;\n\nvar arr = new Array(3)\narr[0] = …\u003c/code\u003e\u003c/pre\u003e"
November 2, 2008
Ubuntu下设置常见网络服务指南
"\u003cp\u003e基本DNS服务\u003c/p\u003e\n\u003cp\u003e主域名服务设置\u003c/p\u003e\n\u003cp\u003e从域名服务设置\u003c/p\u003e\n\u003cp\u003e缓存域名服务设置\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://forum.ubuntu.org.cn/viewtopic.php?t=3110\"\u003ehttp://forum.ubuntu.org.cn/viewtopic.php?t=3110\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e高级DNS服务\u003c/p\u003e\n\u003cp\u003e多重DNS解析服务(DNS服务器上相同域名根据内外网的不同解析成不同的IP地址) \u003ca href=\"http://forum.ubuntu.org.cn/viewtopic.php?t=453\"\u003ehttp://forum.ubuntu.org.cn/viewtopic.php?t=453\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e基本邮件服务\u003c/p\u003e\n\u003cp\u003e高级邮件服务\u003c/p\u003e\n\u003cp\u003e防垃圾邮件服务\u003c/p\u003e\n\u003cp\u003e安全邮件网关服务(防黑防毒)\u003c/p\u003e\n\u003cp\u003e具有Web操作界面\u003c/p\u003e\n\u003cp\u003e基本Web服务\u003c/p\u003e\n\u003cp\u003eApache2: \u003ca href=\"http://forum.ubuntu.org.cn/viewtopic.php?t=2143\"\u003ehttp://forum.ubuntu.org.cn/viewtopic.php?t=2143\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eZope/Plone: \u003ca href=\"http://forum.ubuntu.org.cn/viewtopic.php?t=5828\"\u003ehttp://forum.ubuntu.org.cn/viewtopic.php?t=5828\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e高级Web服务\u003c/p\u003e\n\u003cp\u003e虚拟域名服务 \u003ca href=\"http://forum.ubuntu.org.cn/viewtopic.php?t=10344\"\u003ehttp://forum.ubuntu.org.cn/viewtopic.php?t=10344\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eChroot环境设立 \u003ca href=\"http://forum.ubuntu.org.cn/viewtopic.php?t=2144\"\u003ehttp://forum.ubuntu.org.cn/viewtopic.php?t=2144\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003ePHP …\u003c/p\u003e"
November 2, 2008
让iframe失效,使自己的网站不怕iframe挂马
"\u003cp\u003e\u003cstrong\u003e方法一:\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e"FSO功能:"-”关闭站点Fso功能”.将站点的fso功能关闭掉.这样子基本上就可以杜绝目前的asp木马.如果需要上传附件的话.可以通过”SAFileUp”.”aspupload”.等组件进行上传.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e方法二:\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e辛辛苦苦做的网站突然被挂马,究其原因是因为网页带病毒,打开代码发现所有的页面的代码最后一行都多了一句:\u003c/p\u003e\n\u003cp\u003e引用内容\u003c/p\u003e\n\u003cp\u003e\u0026lt; IFRAME src=”http://www.xxx.xxx “\u0026gt;\u0026lt; /IFRAME \u0026gt;\u003c/p\u003e\n\u003cp\u003e打开引用页面一看防病毒软件一顿乱响,找到元凶了这可怎办?\u003c/p\u003e\n\u003cp\u003e最后一行怎么弄都不行?!!\u003c/p\u003e\n\u003cp\u003e其实很简单我们只需要在 \u0026lt; STYLE \u0026gt;\u0026lt; / STYLE \u0026gt; 之间加上一句\u003c/p\u003e\n\u003cp\u003e完整如下:\u003c/p\u003e\n\u003cp\u003e程序代码\u003c/p\u003e\n\u003cp\u003e就可以了其实这是用了CSS样式表来对网页中所有的FRAME对象进行”洗脑”把iframe中的src属性的值换成空白页这样加进去的iFRAME 代码就不起作用了。\u003c/p\u003e\n\u003cp\u003e这个解决方案除了IFRAME里面的JS代码alert方法不能屏蔽之外,其他任意JS都可以不起作用。\u003c/p\u003e\n\u003cp\u003e如果要使自己的IFRAME显示在网页里,别人挂的IFRAME马都不起作 …\u003c/p\u003e"
October 30, 2008
Freebsd常用命令
"\u003cpre tabindex=\"0\"\u003e\u003ccode\u003evi sshd_config\n\u003c/code\u003e\u003c/pre\u003e\u003cpre tabindex=\"0\"\u003e\u003ccode\u003e# rar a all *.jpg\n这条命令是将任何.jpg的文档压缩成一个rar包,名为all.rar,该程式会将.rar 扩展名将自动附加到包名后。\n# unrar x all.rar\n这条命令是将all.rar中的任何文档解压出来\n\u003c/code\u003e\u003c/pre\u003e\u003cpre tabindex=\"0\"\u003e\u003ccode\u003eunrar x参数是指定用绝对路径解压缩文件,解压缩出来的路径和压缩文件里面的路径相同!\n\u003c/code\u003e\u003c/pre\u003e\u003cpre tabindex=\"0\"\u003e\u003ccode\u003e重启 SSHD 服务usr/ports/archivers/rar\n\nmake install clean\n\n#cd /usr/ports/archivers/unrar\n\n#make install clean\n\u003c/code\u003e\u003c/pre\u003e\u003cpre tabindex=\"0\"\u003e\u003ccode\u003e命令 /etc/rc.c/sshd restart\n光区挂载命令 mount /cdrom 卸载 UMOUNT /CDROM\n/usr/local/mysql/bin/mysqld_safe --user=mysql \u0026amp; mysql 启动命令\n\u003c/code\u003e\u003c/pre\u003e\u003cpre tabindex=\"0\"\u003e\u003ccode\u003e很多人都不知道freebsd下如何重启mysql.现在我把命令放到下面,希望对大家有些帮忙。\n/usr/local/etc/rc.d/mysql-server …\u003c/code\u003e\u003c/pre\u003e"
October 30, 2008
freebsd 添加、删除用户!
"\u003cp\u003e\u003cstrong\u003e2、更改用户登陆shell\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e默认安装是使用sh登陆的,sh不支持TAB键\n要切换到csh,直接运行csh即可\u003c/p\u003e\n\u003cp\u003e如果需要一劳永逸,那么用下面这个命令\nname:是指你登陆的名称\npw usermod -n name -s csh\u003c/p\u003e\n\u003cp\u003e======================================\n添加用户\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e# pw groupadd vsftpd –g 1001\n# pw useradd test –g 1001–d /home/test –s /sbin/nologin\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e或者\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e#adduser\u003c/strong\u003e\nUsername:用户名\nFull name:全名\nUid (Leave empty for default) :要求输入UID值。通常按Enter即可。\nLogin group [xxxx]:要求输入用户的所属群组。可以输入一个现有的群组,如果保持空白,系统会新建一个与用户名一样的群组。\nLogin class:登入等級。通常按Enter即可。\nShell (sh csh tcsh zsh ksh bash nologin) [sh]:用户使用的shell,通常按Enter即可。 …\u003c/p\u003e"
October 30, 2008
一语双关的幽默句子
"\u003cp\u003e英语中有好多一语双关的幽默句子,现在为大家摘录一些常用幽默迷你句型,以供参考,据说是流传甚广的加菲猫语录哦。\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eMoney is not everything. There’s Mastercard and Visa.\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003e钞票不是万能的,毕竟有时还需要信用卡。\u003c/p\u003e\n\u003col start=\"2\"\u003e\n\u003cli\u003eOne should love animals. They are so tasty.\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003e每个人都应该热爱动物,因为它们很好吃。\u003c/p\u003e\n\u003col start=\"3\"\u003e\n\u003cli\u003eSave water. Shower with your girlfriend.\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003e要节约用水,所以尽量和女友一起洗澡。\u003c/p\u003e\n\u003col start=\"4\"\u003e\n\u003cli\u003eLove the neighbor. But don’t get caught.\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003e要用心去爱你的邻居,不过不要让她的老公知道。\u003c/p\u003e\n\u003col start=\"5\"\u003e\n\u003cli\u003eBehind every successful man, there is a woman. And behind every unsuccessful man, there are two or more.\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003e每个成功男人的背后,都有一个女人。每个不成功男人的背后,都有两个或更多。\u003c/p\u003e\n\u003col start=\"6\"\u003e\n\u003cli\u003eEvery man should marry. After …\u003c/li\u003e\u003c/ol\u003e"
October 29, 2008
500 OOPS: vsftpd: refusing to run with writable anonymous root
"\u003cp\u003e\u003cstrong\u003e500 OOPS: vsftpd: refusing to run with writable anonymous root\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e如果我们已经把vsFTPd服务器启动好了,但登录测试是会出现类似下面的提示;\u003c/p\u003e\n\u003cp\u003e500 OOPS: vsftpd: refusing to run with writable anonymous root\u003c/p\u003e\n\u003cp\u003e这表示ftp用户的家目录的权限不对,应该改过才对;\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003e[root@localhost ~]# more /etc/passwd |grep ftp\u0026lt;br /\u0026gt; ftp:x:1000:1000:FTP User:/var/ftp:/sbin/nologin\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003e我们发现ftp用户的家目录在/var/ftp,就是这个/var/ftp的权限不对所致,这个目录的权限是不能打开所有权限的;是您运行了chmod 777 /var/ftp所致;如果没有ftp用户这个家目录,当然您要自己建一个;\u003c/p\u003e\n\u003cp\u003e如下FTP用户的家目录是不能针对所有用户、用户组、其它用户组完全开放;\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003e[root@localhost ~]# ls -ld /var/ftp\u0026lt;br /\u0026gt; …\u003c/code\u003e\u003c/p\u003e"
October 29, 2008
FREEBSD:VSFTP的安装和配置(packages方式)
"\u003cp\u003e一、预备工作:\n1.新建目录\nmkdir /usr/share/empty\nmkdir /var/ftp\n2.改变目录所有者和权限\nchown root:wheel /var/ftp(如果是Linux用chown root:root /var/ftp)\nchmod og-w /var/ftp (此命令是取消其他用户的写权限)\n二、安装VSFTP\n1.用tar包安装\ntar zvf vsftpd-2.0.1.gz.tar\ncd vsfpd-2.0.1\nmake\nmake install\n2.用ports安装(只适合FREEBSD,而且必须是可以上网的用户,对Linux用户不适用)\ncd /usr/ports/ftp/vsftpd\nmake\nmake install\n安装的时候会弹出一个对话框,\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"/wp-content/uploads/2009/01/vsftp1.jpg\"\u003e\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/vsftp1.jpg\" alt=\"\"\u003e\u003c/a\u003e\n选中第一个选项项\n三、配置\n1.配置VSFTP\n打开/etc/vsftpd.conf,(如果用ports安装的话是在/usr/local/etc/vsftpd.conf),,相关参数说明如下:\n===个别使用者设定===================\nchroot_list_enable\n用 …\u003c/p\u003e"
October 29, 2008
freebsd 7.0 vsftpd如何启动!!
"\u003cp\u003e在etc/rc.conf中添加\nvsftpd_enable=”YES”\u003c/p\u003e\n\u003cp\u003e/usr/local/etc/vsftpd.conf中添加\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003elisten=YES\nbackground=YES\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e就可以了,还真是挺复杂,每个软件安装了都要修改配置文件才能启动!!\n如果出现错误\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e500 OOPS: vsftpd: cannot locate user specified in ‘ftp_username’:ftp\u003c/strong\u003e在vsftpd.conf中加入了ftp_username=xxx(用户)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e以下命令可以用来重启vsftpd服务\u003c/strong\u003e\n# /usr/local/etc/rc.d/vsftpd restart\u003c/p\u003e"
October 29, 2008
[教程]FreeBSD下vsftp安装配置详解(ports方式)
"\u003cp\u003eFreeBSD功能强大,ftp服务器只是它其中的很基础的一种服务,但是作为日常的服务器运作ftp服务却是必不可少,本篇是本人自己在学习FreeBSD的服务器设置过程中的一些积累,因为自己也曾是由菜鸟入门,走了不少弯路,现在把自己的一些经验总结出来,供大家参考,希望对新人能有所帮助,不足之处还请大家多多指点.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1、安装\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e通过ports安装,这个方式比较简单。\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e# cd /usr/ports/ftp/vsftpd\n# make install\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e\u003ca href=\"/wp-content/uploads/2009/01/vsftp1.jpg\"\u003e\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/vsftp1-20230904193104456.jpg\" alt=\"\"\u003e\u003c/a\u003e\u003ca href=\"/wp-content/uploads/2009/01/vsftp.jpg\"\u003e\n\u003c/a\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e安装过程中会弹出一个对话框架,选中第一个选项,我以前没有选中,结果安装完以后,在/usr/local/etc/rc.d/目录里没有vsftpd这个命令,导致启动的时候出现以下错误信息:\n\u003cstrong\u003e”500 OOPS: vsftpd: cannot open config file:start”\u003c/strong\u003e\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e**2、配置\n**\u003c/p\u003e\n\u003cp\u003e/usr/local/etc/vsftpd.conf文件一般按以下配置就差不多了:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e\u003cstrong\u003eanonymous_enable=NO\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003elocal_enable=YES\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003ewrite_enable=YES\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003elocal_umask=022 …\u003c/strong\u003e\u003c/p\u003e\u003c/blockquote\u003e"