灌溉梦想,记录脚步

ASP.NET和PHP、JSP究竟学哪个?

Asp.net

首先来说,Asp.net 和 Asp 没什么关系。 Asp 是脚本编程,用的是JavaScript或VbScript脚本进行编写,而ASP.net 则是使用基于.NET平台的语言如VB.NET、C#等,完全不同的东西。ASP.NET迄今为止共有四个版本:1.0、1.1、2.0、3.5它们使用的开发环境分别对应Visual Studio 2002、2003、2005、2008,当然在Visual Studio 2008支持多版本的.NET Framework,即可以在Visual Studio 2008下开发ASP.NET 2.0及3.5。

ASP.net的服务器,要求安装一个.NET Framework,当然我这里指的是windows系统,顺便点一下,.net只能放在windows环境里来运行。

Asp.net属于编译语言,和ASP的最大不同(ASP属于解释语言)。

ASP.net 的速度 是 ASP不能比拟的。下面我来说下为什么ASP.net 比 ASP 快:

ASP.net 是编译语言,所以,当第一次加载的时候,它会把所有的程序进行编译(其中包括 worker进程,还有对语法进行编译,形成一个程序集),当程序编译后,执行速度几乎为0,而ASP是把代码交给VBScript解释器或Jscript解释器来解释,当然速度没有编译过的程序快了。

Php

php和Asp一样也是,也是属于脚本语言,一般连接的数据库为MySql数据库,当然它也能和Access数据库和MsSq(SqlServer)数据库等其他数据库连接。他们都属于免费软件(在中国境内),也就是说他的资源是free的。

Php从安全性上比Asp要好,当然这里说的是相对而言,一个好的程序员把安全性做好的话,都差不多,不过Php的安全性要比Asp要好,为什么这么说呢。这里主要原因是这样的,PHP的搭建服务器环境相对复杂(需要安装Apache + MySql + PHP),而Asp的搭建环境比较简单(只需要安装IIS就可以了),所以学PHP的门槛比Asp的门槛要高,所以很多人就偏向Asp学习的人就多了,自然研究Asp漏洞的人就多了,而PHP会的人就少,所以研究漏洞的人就更少了,从这点来说PHP的安全性比ASP的安全性要高些。

而且还有一点就是 Apache 的环境最好是Unix,当然Windows下也是可以安装的。(Apache 是PHP的支持环境)

还有再说一点,就是MySql的效率问题,他比Access好很多倍,但是比MsSql(SqlServer)要差点。

JSP

JSP目前我还没有太多研究。总体上来说JSP的工程量巨大,任何工程都可以做到,当然是一个团队开发,3个人以上的一个团队开发,他的工期耗时也是最常的。
.NET的优势

有人问到这个问题,所以我总结了下。

.NET开发工具Visual Studo的易用性使得它在Java很难实现的“用户企业(信息系统部门)也可编程的系统”上超人一头。这可能还存在其他类似的领域。

由于Java本身较为复杂,且不易学习掌握,因此用户企业只负责企划,而将编程工作完全委托给集成商的现象非常普遍。

Java普及的主要因素很多,其中最关键的在于“开放性”。由于可各种OS上运行,而且很多开发商还提供了Web应用服务器和开发工具,因此用户可以随意选择。而开发商则通过在功能和性能方面相互竞争来不断提高产品水平。

说了半天,究竟学哪种语言好呢?.NET和JSP应该是未来发展的趋势。世界上一些大的电子商务解决方案提供商都采用JSP/Servlet和.NET框架模式。不过,偏爱PHP的开发者们也不用苦恼,精通任何一门,都是有前途的。

FTP下载的常见错误及解决办法

530,说明密码错误。

550,说明地址有错误,可能是盗连没有改。

详细的FTP错误列表
110 Restart marker reply. In this case, the text is exact and not left to the particular implementation; it must read: MARK yyyy = mmmm where yyyy is User-process data stream marker, and mmmm server's equivalent marker (note the spaces between markers and "=").
重新启动标志回应。这种情况下,信息是精确的并且不用特别的处理;可以这样看:标记 yyyy = mmm 中 yyyy是 用户进程数据流标记,mmmm是服务器端相应的标记(注意在标记和等号间的空格)
———————————–
120 Service ready in nnn minutes.
服务在NNN时间内可用
———————————–
125 Data connection already open; transfer starting.
数据连接已经打开,开始传送数据.
———————————–
150 File status okay; about to open data connection.
文件状态正确,正在打开数据连接.
———————————–
200 Command okay.
命令执行正常结束.
———————————–
202 Command not implemented, superfluous at this site.
命令未被执行,此站点不支持此命令.
———————————–
211 System status, or system help reply.
系统状态或系统帮助信息回应.
———————————–
212 Directory status.
目录状态信息.
———————————–
213 File status.
文件状态信息.
———————————–
214 Help message.On how to use the server or the meaning of a particular non-standard command. This reply is useful only to the human user. 帮助信息。关于如何使用本服务器或特殊的非标准命令。此回复只对人有用。
———————————–
215 NAME system type. Where NAME is an official system name from the list in the Assigned Numbers document.
NAME系统类型。
———————————–
220 Service ready for new user.
新连接的用户的服务已就绪
———————————–
221 Service closing control connection.
控制连接关闭
———————————–
225 Data connection open; no transfer in progress.
数据连接已打开,没有进行中的数据传送
———————————–
226 Closing data connection. Requested file action successful (for example, file transfer or file abort).
正在关闭数据连接。请求文件动作成功结束(例如,文件传送或终止)
———————————–
227 Entering Passive Mode (h1,h2,h3,h4,p1,p2).
进入被动模式
———————————–
230 User logged in, proceed. Logged out if appropriate.
用户已登入。 如果不需要可以登出。
———————————–
250 Requested file action okay, completed.
被请求文件操作成功完成
———————————–
257 "PATHNAME" created.
路径已建立
———————————–
331 User name okay, need password.
用户名存在,需要输入密码
———————————–
332 Need account for login.
需要登陆的账户
———————————–
350 Requested file action pending further information
对被请求文件的操作需要进一步更多的信息
———————————–
421 Service not available, closing control connection.This may be a reply to any command if the service knows it must shut down.
服务不可用,控制连接关闭。这可能是对任何命令的回应,如果服务认为它必须关闭
———————————–
425 Can't open data connection.
打开数据连接失败
———————————–
426 Connection closed; transfer aborted.
连接关闭,传送中止。
———————————–
450 Requested file action not taken.
对被请求文件的操作未被执行
———————————–
451 Requested action aborted. Local error in processing.
请求的操作中止。处理中发生本地错误。
———————————–
452 Requested action not taken. Insufficient storage space in system.File unavailable (e.g., file busy).
请求的操作没有被执行。 系统存储空间不足。 文件不可用
———————————–
500 Syntax error, command unrecognized. This may include errors such as command line too long.
语法错误,不可识别的命令。 这可能是命令行过长。
———————————–
501 Syntax error in parameters or arguments.
参数错误导致的语法错误
———————————–
502 Command not implemented.
命令未被执行
———————————–
503 Bad sequence of commands.
命令的次序错误。
———————————–
504 Command not implemented for that parameter.
由于参数错误,命令未被执行
———————————–
530 Not logged in.
没有登录
———————————–
532 Need account for storing files.
存储文件需要账户信息
———————————–
550 Requested action not taken. File unavailable (e.g., file not found, no access).
请求操作未被执行,文件不可用。
———————————–
551 Requested action aborted. Page type unknown.
请求操作中止,页面类型未知
———————————–
552 Requested file action aborted. Exceeded storage allocation (for current directory or dataset).
对请求文件的操作中止。 超出存储分配
———————————–
553 Requested action not taken. File name not allowed
请求操作未被执行。 文件名不允许

这种错误跟http协议类似,大致是:
2开头--成功
3开头--权限问题
4开头--文件问题
5开头--服务器问题

网络工程师的学习指南

虽然是水平第一,考试第二的,但朋友们毕竟还是以考试为目标的。说明白点,水平再高,过不了网络工程师也没说服力。
网络知识是电脑技术的十分重要的分支,除了网络之外,我们有更多更广的知识当然好,但即使不愿意承认,我也必须认可这样一个问题,就是有些知识对于通过网络工程师考试几乎没有用(说得好听些,就是对于你将来从事网络工作用处不大);甚至,有些网络知识对于通过网络工程师考试也没用,一个例子:哪怕是对ASP精通无比,对于你通过网络工程师上下午试题几乎没有任何帮助。

网络工程师跟高程一样,无法通过短期培训班之类提高水平,主要看个人长期的努力。既然好多朋友都问,该如何下手学习,我们就尝试着讨论一下,哪些资料在我们学习范围之内,这个讨论很“务实”“功利”,仅讨论如何针对网络工程师考试。

开始讨论之前,先说说到哪儿去买书,现在很多城市里面,都有针对考试的小型书店,面向公务员考试、司法考试等等,这里可以买到网络工程师教程之类的书,计算机本科自学考试的书,也是一种很好的选择。还有一些资料,这种书店买不到,需要去计算机类图书丰富的书店买。另外网上获得的资料不错,但是最好打印来看。

1、《网络工程师教程》,必看,当作指导性的大纲来看,它可以使你网络知识的结构更加清晰与合理。由于教程不完全覆盖考试内容,获取其他资料作为知识的深化和补充是绝对必须的,下面的推荐与大纲介绍的基本同步。

2、《数据通信原理》,包括通信原理和交换技术的内容,在上午肯定有一二道大题,只看教程不够。对这本书不一定看得太深,即使没有任何基础通上一两遍也不困难,可以让你提高一大步。这部分相关的内容还包括《信号与系统》,不想做硬件的朋友我觉得就不用看了。

3、网络体系结构和协议,这部分看教程即可。

4、局域网技术,先看教程,然后找一本CCNA英文教材看一遍。这样有三个好处:比教程更深入;同时提高专业英语水准;顺便学习CISCO路由器和交换机的基础知识。

5、广域网技术看教程,这部分ATM是重点,需要找别的资料深化一下(因为它流行,如CISCO流行一个道理)。

6、网络互连,先看教程。路由方面的知识教程上不够,建议有Linux环境,看看UNIX系统中的路由配置。CCNP的教程不必要全看,路由和交换看看就行,中文的也可以。

7、网络操作系统,如上,研究linux就可以。上午题目里面会有。

8、网络管理上,教程中本章前面对局域网的管理部分非常好,是每一个网络管理员都应该耳熟能详的经验。后面的SNMP不太深,但是也差不多够了,想深化的找一本《网络管理》,对snmp会有更认识。

9、网络安全,教程很概念化,如果想深入一点,看看《计算机密码学》,对加密技术能有更多感性认识(如RSA的原理,一次一密乱码本),但不用太深入。如果有条件,还可以感受一下win2000在安全方面对身份认证,鉴别,访问控制等技术的具体实现。我觉得其中有两个重要问题,访问控制和防火墙,但是这两年都没考,最好结合Cisco的学习去深化一下。

10、后面章节的内容看教程就好,还是很不错,将来做论文和实际项目,都会用上。

11、Linux教程必看,包括各种网络服务的配置(WWW,FTP),CGI现在不太时髦,可以不用看。另外如果有时间,把《网络操作系统》看一遍也很不错。

12、网络程序设计,只要有相当C语言能力,越高越好,不需要C++和Visual C(有的话更好),在Linux环境下,学习socket就可以,书方面看UNIX或LINUX网络程序设计都可以,置顶帖子里的UNIX网络程序设计是我看过的最好的。

13、网络工程师教程有一本配套的同步辅导,作一遍也好,但感觉没有本质进步,另外有一本航天出版社的《网络设计师重点分析》,那本书更没用(有抄袭之嫌)。真正的网络工程师题目往往需要你的综合能力,能够运用自己各方面的基础知识解决问题,比如2001年上午题目有一个有关路由表的问题。

14、如果感觉专业英语有欠缺,可以找一本清华的《计算机英语》,不过这不是专门面向网络英语的,可以考www.mcseguide.com订阅一份CCNA的邮件,既能学英语,又能做做题目。网上其他计算机英语读物,或是英文网站都不错,自己动手去找找,绝对可以丰衣足食。

15、越多的实践对你帮助越大,能在一个单位作网络管理最好啦。没有机会就尽量创造机会啦。

linux配置多个IP

单网卡上配置双IP
cd /etc/sysconfig/network-scripts
在network-scripts下有一个ifcfg-eth0
复制ifcfg-eth0 为ifcfg-eth0:1
然后用vi编辑进行编辑

vi ifcfg-eth0:1
# Intel Corporation 82566DC Gigabit Network Connection
DEVICE=eth0
BOOTPROTO=none
BROADCAST=218.95.37.255
HWADDR=00:19:d1:34:2d:b8
IPADDR=218.95.37.250——————IP地址
NETMASK=255.255.255.192—————子网掩码
NETWORK=218.95.37.192
ONBOOT=yes
GATEWAY=218.95.37.193—————–网关
TYPE=Ethernet
按shfit键加:
:wq 保存退出
然后把eth0:1激活就可以了。
ifconfig eht0:1 up

Linux操作系统的密码破解大全

(一)Linux 系统密码破解
  1.在grub选项菜单按E进入编辑模式
  2.编辑kernel那行 /init 1 (或/single)
  3.按B重启
  4.进入后执行下列命令
  root@#passwd root (设置root的密码)
  Enter new unix password:输入新的密码
  root@#init 6

  (二)debian linux 系统密码破解

  1.在grub选项菜单'Debian GNU/Linux,…(recovery mode)',按e进入编辑模式
  2.编辑kernel那行最后面的 ro single 改成 rw single init=/bin/bash,按b执行重启
  3.进入后执行下列命令
  root@(none)#mount -a
  root@(none)#passwd root
  root@(none)#reboot

  (三)Freebsd 系统密码破解

  1.开机进入引导菜单
  2.选择每项(按4)进入单用户模式
  3.进入之后输入一列命令
  root@#mount -a
  root@#fsck -y
  root@#passwd(修改密码命令)
  root@#root(要破解密码的用户名)
  Enter new unix password:
  root@#init 6 (重启)

  (四)Solaris 系统密码破解

  1.在grub选项菜中选择solaris failasfe 项
  2.系统提示Do you wish to have it mounted read-write on /a ?[y,n,?] 选择y
  3.就进入单用户模式
  4.输入下列命令
  #passwd
  #New passwd:输入新的密码
  #Re-enter New passwd:在次输入新的密码
  #init 6 (重启)

  (五)NetBsd 系统密码破解

  1.开机:当出现提示符号并开始倒数五秒时, 键入以下指令:
  > boot -s (进入单用户模式命令)
  2.在以下的提示符号中
  Enter pathname of shell or RETURN for sh:
  按下 Enter。
  3.键入以下指令:
  # mount -a
  # fsck -y
  4.使用 passwd 更改 root 的密码。
  5.使用 exit 指令进入多人模式。

ubuntu_VirtualBox后热键,键盘失效

8.04安装VirtualBox后热键,键盘失效,网上有些说关闭銉盘自动捕捉,效果不明显,毕竟不爽。后来在红联论坛找了以下东东:

打开新立得,把scim-bridge-client-qt重装了下,同时把scim-bridge-client-qt4也给装了,然后virtualbox里的键盘就可以用了。

试了一下,效果确实是好,完美解决,可以打开键盘自动捕捉了,跟以前一样。
我的机器是TCL-K2225笔记本,除了声卡音量调节有点小问题外,其余相当的好用。

windows2003_iis6.0设置问题排错

问题1:未启用父路径
症状举例:
Server.MapPath() 错误 ’ASP 0175 : 80004005’
不允许的 Path 字符
/0709/dqyllhsub/news/OpenDatabase.asp,行 4
在 MapPath 的 Path 参数中不允许字符 ’..’。
原因分析:
许多Web页面里要用到诸如../格式的语句(即回到上一层的页面,也就是父路径),而IIS6.0出于安全考虑,这一选项默认是关闭的。
解决方法:
在IIS中 属性->主目录->配置->选项中。把”启用父路径“前面打上勾。确认刷新。

问题2:ASP的Web扩展配置不当(同样适用于ASP.NET、CGI)
症状举例:
HTTP 错误 404 – 文件或目录未找到。
原因分析:
在IIS6.0中新增了web程序扩展这一选项,你可以在其中对ASP、ASP.NET、CGI、IDC等程序进行允许或禁止,默认情况下ASP等程序是禁止的。
解决方法:
在IIS中的Web服务扩展中选中Active Server Pages,点击“允许”。

问题3:身份认证配置不当
症状举例:
HTTP 错误 401.2 – 未经授权:访问由于服务器配置被拒绝。
原因分析:IIS 支持以下几种 Web 身份验证方法:
匿名身份验证
IIS 创建 IUSR_计算机名称 帐户(其中 计算机名称 是正在运行 IIS 的服务器的名称),用来在匿名用户请求 Web 内容时对他们进行身份验证。此帐户授予用户本地登录权限。你可以将匿名用户访问重置为使用任何有效的 Windows 帐户。
基本身份验证
使用基本身份验证可限制对 NTFS 格式 Web 服务器上的文件的访问。使用基本身份验证,用户必须输入凭据,而且访问是基于用户 ID 的。用户 ID 和密码都以明文形式在网络间进行发送。
Windows 集成身份验证
Windows 集成身份验证比基本身份验证安全,而且在用户具有 Windows 域帐户的内部网环境中能很好地发挥作用。在集成的 Windows 身份验证中,浏览器尝试使用当前用户在域登录过程中使用的凭据,如果尝试失败,就会提示该用户输入用户名和密码。如果你使用集成的 Windows 身份验证,则用户的密码将不传送到服务器。如果该用户作为域用户登录到本地计算机,则他在访问此域中的网络计算机时不必再次进行身份验证。
摘要身份验证
摘要身份验证克服了基本身份验证的许多缺点。在使用摘要身份验证时,密码不是以明文形式发送的。另外,你可以通过代理服务器使用摘要身份验证。摘要身份验证使用一种挑战/响应机制(集成 Windows 身份验证使用的机制),其中的密码是以加密形式发送的。
.NET Passport 身份验证
Microsoft .NET Passport 是一项用户身份验证服务,它允许单一签入安全性,可使用户在访问启用了 .NET Passport 的 Web 站点和服务时更加安全。启用了 .NET Passport 的站点会依* .NET Passport 中央服务器来对用户进行身份验证。但是,该中心服务器不会授权或拒绝特定用户访问各个启用了 .NET Passport 的站点。
解决方法:
根据需要配置不同的身份认证(一般为匿名身份认证,这是大多数站点使用的认证方法)。认证选项在IIS的属性->安全性->身份验证和访问控制下配置。

问题4:IP限制配置不当
症状举例:
HTTP 错误 403.6 – 禁止访问:客户端的 IP 地址被拒绝。
原因分析:
IIS提供了IP限制的机制,你可以通过配置来限制某㊣P不能访问站点,或者限制仅仅只有某些IP可以访问站点,而如果客户端在被你阻止的IP范围内,或者不在你允许的范围内,则会出现错误提示。
解决方法:
进入IIS的属性->安全性->IP地址和域名限制。如果要限制某些IP地址的访问,需要选择授权访问,点添加选择不允许的IP地址。反之则可以只允许某些IP地址的访问。

问题5:IUSR账号被禁用
症状举例:
HTTP 错误 401.1 – 未经授权:访问由于凭据无效被拒绝。
原因分析:
由于用户匿名访问使用的账号是IUSR_机器名,因此如果此账号被禁用,将造成用户无法访问。
解决办法:
控制面板->管理工具->计算机管理->本地用户和组,将IUSR_机器名账号启用。

问题6:NTFS权限设置不当
症状举例:
HTTP 错误 401.3 – 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。
原因分析:
Web客户端的用户隶属于user组,因此,如果该文件的NTFS权限不足(例如没有读权限),则会导致页面无法访问。
解决办法:
进入该文件夹的安全选项卡,配置user的权限,至少要给读权限。关于NTFS权限设置这里不再馈述。

问题7:IWAM账号不同步
症状举例:
HTTP 500 – 内部服务器错误
原因分析:
IWAM账号是安装IIS时系统自动建立的一个内置账号。IWAM账号建立后被Active Directory、IIS metabase数据库和COM+应用程序三方共同使用,账号密码被三方分别保存,并由操作系统负责这三方保存的IWAM密码的同步工作。系统对IWAM账号的密码同步工作有时会失效,导致IWAM账号所用密码不统一。
解决办法:
如果存在AD,选择开始->程序->管理工具->Active Directory用户和计算机。为IWAM账号设置密码。
运行c:\\Inetpub\\AdminScripts>adsutil SET w3svc/WAMUserPass +密码 同步IIS metabase数据库密码
运行cscript c:\\inetpub\\adminscripts\\synciwam.vbs -v 同步IWAM账号在COM+应用程序中的密码

问题8:MIME设置问题导致某些类型文件无法下载(以ISO为例)
症状举例:
HTTP 错误 404 – 文件或目录未找到。
原因分析:
IIS6.0取消了对某些MIME类型的支持,例如ISO,致使客户端下载出错。
解决方法:
在IIS中 属性->HTTP头->MIME类型->新建。在随后的对话框中,扩展名填入.ISO,MIME类型是application。

另外,防火墙阻止,ODBC配置错误,Web服务器性能限制,线程限制等因素也是造成IIS服务器无法访问的可能原因,这里就不再一一馈述了。