Ⅰ 如何用用命令行开启nodejs搭建web服务器
首先,需要安装nodejs,这个可以去官网下载,目前我本地安装的v0.12版本。
安装完成后可以通过命令行测试安装是否成功,输入:node -v,应该会显示当前安装node版本号。
本文中用到的模块,都是nodejs核心模块,不需要从外部下载,如果有需要,可以使用以下命令安装:npm install xxx。
开始
下一步,新建js文件,可以命名为server.js,代码如下:
var http = require('http');
var url = require('url');
var path = require('path');
var fs = require('fs');
var dir, arg = process.argv[2] || ''; // 命令行第三个参数,用来接收目录,可为空,相对当前server.js文件的目录名称
// 比如使用命令 node server debug,意思就是debug文件夹与server.js文件同级
// 且你想以debug文件夹启动web服务
http.createServer(function (req, res) {
var pathname = __dirname + url.parse(req.url).pathname;
dir = dir ? dir : pathname; // 记住dir(目录)
pathname = dir ? pathname.replace(dir, dir + arg + '/') : pathname; // 替换文件静态路径
if (path.extname(pathname) == "") {
pathname += "/";
}
if (pathname.charAt(pathname.length - 1) == "穗敏侍/") {
pathname += "index.html"; // 入口文件,此处默认index.html
}
fs.exists(pathname, function (exists) {
if (exists) {
switch (path.extname(pathname)) {
case ".html":
res.writeHead(200, {"Content-Type": "text/html"});
break;
case ".js":
res.writeHead(200, {"Content-Type": "text/javascript"});
break;
case ".css":
res.writeHead(200, {"Content-Type": "text/css"});
break;
case ".gif":
res.writeHead(200, {"Content-Type": "image/gif"});
break;
case ".jpg":
res.writeHead(200, {"Content-Type": "image/jpeg"});
break;
case ".png":
res.writeHead(200, {"Content-Type": "image/png"});
break;
default:
res.writeHead(200, {"Content-Type"拿弊: "application/octet-stream"});
}
// res可以自己添加信息来简单交互 比如可以修改点header信息 或者修改返回的资源数据
fs.readFile(pathname, function (err, data) {
res.end(data);
});
}
else {
res.writeHead(404, {"Content-Type": "text/html"});
res.end("<h1>404 Not Found</h1>");
}
});
}).listen(8085, "127.0.0.5"); // 服务器端口
console.log("server running at http://127.0.0.5:8085/");
启动
当node安装完成及上述server.js文件也新建好之后。将其与你要访问的文件夹放在一起,可以放同层或者直接下猜吵层。比如,如果你要访问d:\test\debug文件夹。
你可以先将当前文件放入同层或者直接下,然后输入如下命令启动web服务:
先打开`cmd`,进入server文件所在目录,比如是`test`目录;
然后输入:`node server debug`(同层), 或者`node server`(子层),
此时会提示`server running at http://127.0.0.5:8085/`, 表示启动服务成功;
最后打开浏览器,进入:`127.0.0.5:8085`,即可访问此资源。
Ⅱ 如何在Ubuntu 16.04上使用Nginx的OpenResty Web框架
第1步 - 下载OpenResty的源代码和依赖关系
在本节中,我们将从源代码安装OpenResty。
首先,从OpenResty网站的下载页面找到最新的OpenResty源代码版本。下载tarball,确保如果更改了版本号,请使用最新版本号。
wget https://openresty.org/download/openresty-1.11.2.2.tar.gz
下载PGP密钥文件,以便我们可以验证文件的内容。
wget https://openresty.org/download/openresty-1.11.2.2.tar.gz.asc
接下来,我们需要添加作者的公共密钥,如下载页面上所列。在撰写本文时,这是公钥A0E98066 。但是,请检查它是否已更改;它被列在同一下载页面上。
gpg --keyserver pgpkeys.mit.e --recv-key A0E98066
第2步 - 安装OpenResty
我们将配置OpenResty与PCRE正则表达式和IPv6支持。我们还将通过提供-j2标志来并行化构建过程的一部分,这将告诉make 2个作业可以同时运行。此命令将主要测试所有依赖项是否可用于您的系统,并收集将由构建步骤稍后使用的信息。它也已经构建了一些依赖项,如LuaJIT。./configure -j2 --with-pcre-jit --with-ipv6
然后,您可以通过提供-j2并行度标志来构建OpenResty。这将编译OpenResty本身。make -j2
最后,您可以安装OpenResty。使用sudo确保所有文件可以复制到系统上的正确位置,以便OpenResty可以在运行时找到它们。sudo make install
您需要在防火墙中允许HTTP连接才能使Web服务器正常工作。sudo ufw allow http
您也可以选择允许HTTPS与sudo ufw allow https如果你要使用它。您可以通过检查防火墙的状态来验证防火墙的更改。sudo ufw status
您应该看到显示的输出中允许HTTP流量(端口80 ),以及如果您添加它的HTTPS(端口443 )。
您现在可以检查安装是否有效。首先,启动OpenResty。sudo /usr/local/openresty/bin/openresty
如果命令成功,它将立即完成而不输出文本。在这种情况下,您可以在浏览器中访问http:// your_server_ip 。 你会看到一个页面,说欢迎来到OpenResty!确认它已完全安装和工作。
您现在可以停止OpenResty服务器。sudo /usr/local/openresty/bin/openresty -s quit
OpenResty已安装,但您仍需要配置OpenResty在启动时运行,所以服务器不必手动启动。
第3步 - 将OpenResty设置为服务
在这里,我们将OpenResty设置为一个服务,所以它在启动时自动启动。我们将使用systemd init服务。 您可以阅读此systemd基础教程了解更多信息,以及本单元文件教程 ,了解单元文件的具体信息。
首先使用nano或您喜欢的文本编辑器创建一个新的systemd文件。sudo nano /etc/systemd/system/openresty.service
对于本教程,我们将从全新安装中复制默认的Nginx systemd文件,并针对OpenResty进行修改。
第4步 - 配置OpenResty
要配置OpenResty,我们使用默认的Nginx配置作为参考,以便它大部分匹配你可能会熟悉的。 首先,再次打开OpenResty配置文件: sudo nano /usr/local/openresty/nginx/conf/nginx.conf
这一次,我们将修改http块并将此http块中的server块移动到一个新文件以具有更好的结构。 首先,找到http {行,并删除之后的一切,除了最后一行与对应的} 。
当前/usr/local/openresty/nginx/conf/nginx.conf
user www-data;worker_processes auto;pid /run/openresty.pid;events {
worker_connections 1024;}http {
include mime.types;
default_type application/octet-stream;
. . .}
然后,将以下内容复制到http块中,以便整个文件看起来像这样。我们将一次过一个更改。
/usr/local/openresty/nginx/conf/nginx.conf
user www-data;worker_processes auto;pid /run/openresty.pid;events {
worker_connections 1024;}http {
include mime.types;
default_type application/octet-stream;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
ssl_prefer_server_ciphers on;
access_log /var/log/openresty/access.log;
error_log /var/log/openresty/error.log;
gzip on;
gzip_disable "msie6";
include ../sites/*;
}
保存并关闭文件。 我们对默认文件所做的更改是:
取消tcp_nopush on; ,它告诉OpenResty只发送完整的数据包。 当使用sendfile选项时,此选项很有用,这将允许OpenResty优化将静态文件发送到客户端。
添加tcp_nodelay on; 。 此选项将尝试尽快发送数据包,这可能看起来与上述选项相反,但它在不同的时间使用。 tcp_nodelay仅在对HTTP请求使用keepalive选项时使用,这是通过Web浏览器连接到Web服务器,这将避免每次请求时启动HTTP连接的开销。
添加和修改ssl_protocols和ssl_prefer_server_ciphers行。这些选项配置OpenResty的SSL选项。我们删除了易受已知的HTTPS攻击的旧协议,例如POODLE攻击。
添加access_log和error_log行,它们配置Web服务器的日志位置。 我们将日志存储在上一步中创建的/var/log/openresty目录中。
取消注释gzip on并添加gzip_disable "msie6" 。这些选项将配置GZIP,这将压缩网页,以便有更少的数据传输。我们还添加了最后一个选项,因为Internet Explorer 6(及更早版本)并不总是正确处理GZIP内容。
添加include ../sites/*; ,它告诉OpenResty在/usr/local/openresty/nginx/sites目录中查找额外的配置文件,稍后我们将创建它。
删除所有server块,我们将在此步骤中稍后重新定位到新文件。
- 接下来,创建我们在include行中指定的新sites目录。 sudo mkdir /usr/local/openresty/nginx/sites
- 创建default网站。 sudo nano /usr/local/openresty/nginx/sites/default.conf
- 在此新文件中添加以下内容。这是从nginx.conf重新定位原始服务器块,但有更多细节的内联注释。
- server {
- # Listen on port 80.
- listen 80 default_server;
- listen [::]:80 default_server;
- # The document root.
- root /usr/local/openresty/nginx/html/default;
- # Add index.php if you are using PHP.
- index index.html index.htm;
- # The server name, which isn't relevant in this case, because we only have one.
- server_name _;
- # When we try to access this site...
- location / {
- # ... first attempt to serve request as file, then as a directory,
- # then fall back to displaying a 404.
- try_files $uri $uri/ =404;
- }
- # Redirect server error pages to the static page /50x.html.
- error_page 500 502 503 504 /50x.html;
- location = /50x.html {
- root /usr/local/openresty/nginx/html;
- }}
- 保存并关闭文件。 现在,为此网站创建一个新目录。 sudo mkdir /usr/local/openresty/nginx/html/default
- 然后将原始index.html从其原始位置移动到新目录。 sudo mv /usr/local/openresty/nginx/html/index.html /usr/local/openresty/nginx/html/default
- 最后,重新启动OpenResty以使用此新站点。 sudo systemctl restart openresty
- 您现在可以再次访问http:// your_server_ip ,并查看与之前相同的网页。 现在OpenResty是完全配置的,我们可以尝试一些由OpenResty介绍的,在Nginx默认情况下不可用的功能。
- 在本节中,我们将看看OpenResty添加的不同模块的组合,这些模块都存在以适应Lua脚本。我们将在整个步骤中/usr/local/openresty/nginx/sites/default.conf /usr/local/openresty/nginx/sites/default.conf,因此首先打开它。 sudo nano /usr/local/openresty/nginx/sites/default.conf
- 首先,我们将看一下content_by_lua_block配置选项。 从下面的示例配置中复制location块,并将其添加到server块中,位于两个现有location块下面。
- server {
- . . .
- location /example {
- default_type 'text/plain';
- content_by_lua_block {
- ngx.say('Hello, Sammy!')
- }
- }}
- 保存并关闭文件,然后重新加载配置。 sudo systemctl reload openresty
- 如果您http:// your_server_ip /example访问http:// your_server_ip /example ,您会看到一个http:// your_server_ip /example 您好,Sammy的页面! 。让我们解释这是如何工作的。 content_by_lua_block配置指令执行其中的所有内容作为Lua代码。 在这里,我们使用Lua函数ngx.say来打印消息Hello,Sammy!到页面。 对于另一个示例,将location /example块的内容替换为:
- server {
- . . .
- location /example {
- default_type 'text/plain';
- content_by_lua_file /usr/local/openresty/nginx/html/default/index.lua;
- }}
- content_by_lua_file从外部文件加载Lua内容,所以让我们创建上面指定的内容: /usr/local/openresty/nginx/html/default/index.lua 。 sudo nano /usr/local/openresty/nginx/html/default/index.lua
- 将以下内容添加到文件,然后保存并将其关闭。
- local name = ngx.var.arg_name or "Anonymous"ngx.say("Hello, ", name, "!")
- 这是一个简单的Lua,它读取URL中的查询参数, name并自定义问候消息。如果没有传递参数,则使用“匿名”。 再次重新加载配置。 sudo systemctl reload openresty
- 现在,在浏览器中访问http:// your_server_ip /example?name= Sammy 。 这将显示你好,Sammy! 。 您可以更改name查询参数,或完全忽略它。 Hello, Sammy!
- 您还可以更改name查询参数以显示任何其他名称。 警告:请勿将您要加载的Lua文件从Web访问到的位置。如果这样做,如果有人访问此文件,则可能会包含应用程序代码。将文件放在文档根目录之外,例如,将文档根目录更改为/usr/local/openresty/nginx/html/default/public ,并将Lua文件放在其上一个目录。
/usr/local/openresty/nginx/sites/default.conf
第5步 - 使用OpenResty Lua模块
/usr/local/openresty/nginx/sites/default.conf content_by_lua_block示例
/usr/local/openresty/nginx/sites/default.conf content_by_lua_file示例
/usr/local/openresty/nginx/html/default/index.lua
Ⅲ IIS服务器与web.config配置优化指南
修改IIS最大工作进程数 a 请考虑以下几点 每一个工作进程都会消耗系统资源和CPU占用率 太多的工作进程会导致系统资源和CPU利用率的急剧消耗 每一个工作进程都具有自己的状态数据 如果Web应用程序依赖于工作进程保存状态数据 那么可能不支持使用多个工作进程 成资源竞争 让多个工作进程运行同一个应用程序会造成资源竞争 b 修改ISS最大工作进程数提高该应用程序池处理请求的性能 在IIS 的Web园(Web Garden)中 指定用于某个应用程序池的工作进程的数量就可以提高该应用程序池处理请求的性能 当服务器的负载较小 不需要额外的工作进程时 IIS 在一定的时间后(默认 分钟 可配置)自动缩减实际的工作进程数量 如果负载变大 需要额外的工作进程 IIS 再次增加工作进程数量 这一切操作都自动进行 不需要管理员干预 修改方法如下 修改服务器 net framework的machine config的配置 目录 C:WINDOWSMicrosoft NETFramework v CONFIGmachine config 将其中的“processModel”节点的“allowDefinition”值设置为“Everywhere” 修改服务器中的iis最大工作进程数: 方法 右击iis应用程序池 > 属性 > “性能”选项卡 > web园 > 最大工作进程数 注 经测试验证 服务器为 ( * )核 G内存时 设置为 性能最优 (PS: processModel 元素(ASP NET 设置架构) 元素配置用于服务器(包括服务器上的所有 ASP NET 应用程序)的处理模型 因此 processModel 设置只能放在 Machine config 文件中 而且不能被任何 Web config 文件中的设置重写 ) 取消IIS的web访问记录 a 关闭IIS访问记录可以提升web性能 IIS 默认开启对于web的IIS访问记录 当开启记录功能后 IIS会事无巨细地忠实记录所有的IIS访问记录 这些记录文件的内容是非常庞杂的 比如访问时间 客户端IP 从哪个链接访问 Cookies等 另外还包括 Method(方法) UserAgent(用户代理)等 这些记录不但占用大量的磁盘空间还大大地影响了web服务器的性能 有人做过评测 停止IIS访问记录可以提升 %到 %的web性能 方法 打开IIS管理器 定位到具体的web站点 右键点击选择“属性” 在“主目录”选项卡下取消对“记录访问”的勾选即可 Web config配置优化(生产环境) 去除无用HttpMoles d 并不是所有的Moles都是必需的 去除不用的HttpMoles可以提高请求速度 asp net默认的HttpMoles管理请求的管线控制每一个请求 例如 SessionStateMole拦截每一个请求 分析session cookie 来加载HttpContext中的合适的session 但是并不是所有的Moles都是必需的 比如 如果你不用membership的话 就不用配置FormsAuthentication模块 如果你不用windows身份验证就不用配置WindowsAuthentication 这些模块只是包含在管线里面 为每一个请求执行一些并不是必须的代码 默认的模块定义在machine config中(在网站的web config中设置表示当前网站有效)($WINDOWS$Microsoft NETFramework$VERSION$CONFIG) 如果不需要这些管线的话 配置如下
代码如下: <Moles> <! 去除不必要的节点 提高请求速度 > <remove name=OutputCache /> <remove name=Session /> <remove name=WindowsAuthentication /> <remove name=FormsAuthentication /> <remove name=PassportAuthentication /> <remove name=RoleManager /> <remove name=UrlAuthorization /> <remove name=FileAuthorization /> <remove name=AnonymousIdentification /> <remove name=Profile /> </Moles>
关闭页面级无用机制 Web config中的<pages>节点配置全局定义页特定设置 如配置文件范围内的页和控件的 ASP NET 指令 默认enableViewState属性为“true” 即开启视图 如果不使用这个机制就可以设置为“false” 默认autoEventWireup属性为“true” 即开启页事件 如果不使用这个机制就可以设置为“false” 默认buffer属性为“true” 即开启 HTTP 响应缓冲 默认enableViewStateMac属性为“false” 开启对页的视图状态运行计算机身份验证检查 (MAC) 以放置用户篡改 如果设置为true 将会引起性能的降低 默认validateRequest默认为true 开启验证用户输入中有跨站点脚本攻击和sql注入式漏洞攻击 如果出现匹配情况就会发 异常 将CustomError设置为非Off状态 Web config中的<customErrors>节点用于定义一些自定义错误信息的信息 此节点有Mode和defaultRedirect两个属性 其中defaultRedirect属性是一个可选属性 表示应用程序发生错误时重定向到的默认URL 如果没有指定该属性则显示一般性错误 Mode属性是一个必选属性 它有三个可能值 它们所代表的意义分别如下 Mode 说明 On 表示在本地和远程用户都会看到自定义错误信息 Off 禁用自定义错误信息 本地和远程用户都会看到详细的错误信息 RemoteOnly 表示本地用户将看到详细错误信息 而远程用户将会看到自定义错误信息 这里有必要说明一下本地用户和远程用户的概念 当我们访问asp net应用程时所使用的机器和发布asp net应用程序所使用的机器为同一台机器时成为本地用户 反之则称之为远程用户 在开发调试阶段为了便于查找错误Mode属性建议设置为Off 而在部署阶段应将Mode属性设置为On或者RemoteOnly 以避免这些详细的错误信息暴露了程序代码细节从而引来黑客的入侵 配置如下
代码如下: <customErrors mode=" On " defaultRedirect="Error "/>
禁用调试 Web config中的<pilation>节点配置 ASP NET 使用的所有编译设置 默认的debug属性为“true” 即允许调试 在开发阶段这样配置没有问题 但正式部署上线后 这样会影响支撑接口的性能 所以在程序编译完成上线之后应将其设为“false” 配置如下
代码如下: <pilation debug="false" />
连接并发配置 连接并发数限制是指对于同一个ip对同一个domain发起的最大连接数 其实在大多数微软的产品或组件中都存在这个限制 一般这个数值是 / 个 也就是说在默认情况下 对于同一个ip访问同一个domain同时最多有 个连接处于建立状态 默认是 这个值太低了 这意味着每一个IP最多只能有两个请求到你的网站 这样会造成请求拥堵 asp net中connectionManagement节点可以设置单个ip对同某个domain发起的最大连接数 配置如下
代码如下: <system net> <connectionManagement> <add address="*" maxconnection=" " /> </connectionManagement> </system net>
address代表针对哪个domain maxconnection代表最大连接数 去掉头信息中的ASP NET 版本标头 enableVersonHeader 指定 ASP NET 是否应输出版本标头 使用该属性来确定当前使用的 ASP NET 版本 对于生产环境 该属性不是必需的 可以禁用 配置示例
lishixin/Article/program/net/201311/14321
Ⅳ windows Server 2012 怎么搭建web服务器
Windows Server 2012 搭建PHP+MySQL环境要分环境,有IIS和APACHE。
一、【IIS环境安装及配置】
1.添加IIS服务器角色
点击任务栏左下角的“服务器管理器”,在“安装类型”选项卡中选择“基于角色或基于功能的安装”,服务器选择中直接选择当前服务器即可,在服务器角色中选择“Web服务器”(如图1-1)。
然后到“Web服务器角色(IIS)”中选择需要的IIS组件。这里需要额外勾选:请求筛选、IP和域限制、URL授权、Windows身份验证、HTTP重定向、CGI、ISAPI扩展、ISAPI筛选器。
选择完毕后确认安装,在同时“功能”选项卡中选择安装“.NET Framework 3.5”,系统将会安装IIS以及相关的服务组件。
我们在浏览器中输入,如果看到以下页面则表明我们已经安装完毕。
2.安装MySQL服务器
Windows Server2012中安装MySQL同以往版本安装并没有什么不同。
2.1.从MySQL官方:下载Windows (x86, 64-bit), MSI Installer。
2.2.双击安装包进行安装,我们选择“Custom”模式,将安装目录存放在“D:MySQL”中,数据库文件存放在“D:MySQLdata”中;
2.3.设定默认root管理员的帐号密码,这里由于我们是本地测试,所以设定密码为:123456,如果是用于服务器环境,需要根据情况将密码、端口重设;
至此MySQL服务器已经安装完毕了(如图:2-1)。
3.安装PHP
3.1.我们这里选择下载PHP5.3,可以从官方:获取。这里由于我们将采用Fast-cgi模式安装,所以选择VC9 x86 Non Thread Safe。
3.2.双击包进行安装,将安装目录更改为“D:PHP”,选择服务器“IIS FAST-CGI”;
3.3.确认安装,安装完毕后在命令行中输入“php -v”,看到如图信息则表示已经安装完成。(如图3-1)
4.安装IIS PHP Manager管理器
为了方便的对PHP管理,我们选择安装IIS的PHP Manage组件,可以从网络上找网站下载,这个安装过程非常简单,这里不再详细介绍。
二、【apache环境安装及配置】
以服务器套件wamp Server 2.5为例说明。
apache:2.4.9
mysql:5.6.17
php:5.5.12
phpMyAdmin:4.1.14
1、安装步骤如下图所示:
2、配置
刚装完wampserver之后,尝试通过外网访问我们配置好的wampserver服务器,但是会发现通过外网访问会提示权限不够,这是为什么呢?是因为wampserver默认是只允许127.0.0.1访问的。
Ⅳ Python三大web框架分别是什么 哪个更好
【导读】目前,Python比较火的三大web框架有Django、Flask和Tornado,要论这三个Web框架哪个更好的话,建议一点,Django帮我们事先搭建了好多,上手会快一些,学习的话可以先从Django学起,然后再学习Flask和Tornado,下面我们就来具体了解一下Python三大web框架的详情。
1、Django
Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,模板T和视图V。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。
2、Flask
Flask是一个使用Python编写的轻量级Web应用框架。其 WSGI工具箱采用Werkzeug ,模板引擎则使用 Jinja2
。Flask使用BSD授权。
Flask也被称为 “microframework” ,因为它使用简单的核心,用 extension
增加其他功能。Flask没有默认使用的数据库、窗体验证工具。
Flask 很轻,花很少的成本就能够开发一个简单的网站。非常适合初学者学习。Flask 框架学会以后,可以考虑学习插件的使用。例如使用 WTForm +
Flask-WTForm 来验证表单数据,用 SQLAlchemy + Flask-SQLAlchemy 来对你的数据库进行控制。
3、Tornado
Tornado是一种 Web 服务器软件的开源版本。Tornado 和现在的主流 Web 服务器框架(包括大多数 Python
的框架)有着明显的区别:它是非阻塞式服务器,而且速度相当快。
得利于其 非阻塞的方式和对epoll的运用,Tornado 每秒可以处理数以千计的连接,因此 Tornado 是实时 Web 服务的一个
理想框架。
关于Python三大web框架的简单介绍,就给大家分享到这里了,当然学习是永无止境的,学习一项技能更是受益终身,所以,只要肯努力学,什么时候开始都不晚,希望大家抓紧时间进行学习吧。
Ⅵ 在junit中模拟web服务器有便捷的方法
测试分类:
1、界面测试
1)给用户的整体感:舒适感;凭感觉能找到想要找的信息;设计风格是否一致
2)各控件的功能
2、功能测试
1)删除/增加某一项:是否对其他项造成影响,这些影响是否都正确
2)列表默认值检查
3)检查按钮功能是否正确:新建、编辑、删除、关闭、返回、保存、导入、上一页、下一页、页面跳转、重置(常见错误)
4)字符串长度检查:超出长度
5)字符类型检查
6)标点符号检查:空格、各种引号、Enter键
7)特殊字符:常见%、“、”
8)中文字符:是否乱码
9)检查信息完整:查看信息,查看所填信息是否完整更新;更新信息,更新信息与添加信息是否一致
10)信息重复:需唯一信息处,比如重复的名字或ID、重名是否区分大小写、加空格
11)检查删除功能:不选择任何信息,按Delete,看如何处理;选择一个或多个进行删除;多页选、翻页选删除;删除是否有提示
12)检查添加和修改是否一致:添加必填项,修改也该必填;添加为什么类型,修改也该什么类型
13)检查修改重名:修改时把不能重名的项改为已存在的内容
14)重复提交表单:一条已经成功提交的记录,返回后再提交
15)检查多次使用返回键:返回到原来页面,重复多次
16)搜索检查:存在或不存在内容,看搜索结果是否正确;多个搜索条件,同时输入合理和不合理条件;特殊字符
17)输入信息的位置
18)上传下载文件检查:功能是否实现,
上传:上传文件是否能打开、格式要求、系统是否有解释信息、将不能上传的文件格式修改后缀为可上传的文件格式;
下载:下载是否能打开、保存、格式要求
19)必填项检查:必填项未填写;是否有提示,如加*;对必填项提示返回后,焦点是否自动定位到必填项
20)快捷键检查:是否支持快捷键Ctrl+C、Ctrl+V、backspace;对不允许做输入的字段(如:下拉选项),对快捷方式是否也做了限制
21)Enter键检查:输入结束后按Enter键,系统如何处理
22)刷新键检查:按浏览器刷新键如何处理
23)回退键检查:按浏览器回退键如何处理
24)空格检查:输入项输入一个或多个空格
25)输入法半角全角检查:比如,浮点型,输入全角小数点“。”或“. ”,如4. 5;全角空格
26)密码检查:输入加密方式的极限字符;密码尽可能长
27)用户检查:不同种类管理员用户的不同权限,是否可以互相删除、管理、编辑;一般用户的权限;注销功能,老用户注销再注册,是否为新用户
28)系统数据检查:数据随业务过程、状态的变化保持正确,不能因为某个过程出现垃圾数据,也不能因为某个过程而丢失数据。
29)系统可恢复性检查:以各种方式把系统搞瘫,测试系统是否可以迅速恢复
30)确认提示检查:系统更新、删除操作:是否有提示、取消操作;提示是否准确;事前、事后提示
31)数据注入检查:对数据库注入,特殊字符,对SQL语句进行破坏
32)时间日期检查:时间、日期、时间验证:日期范围是否符合实际业务;对于不符合实际业务的日期是否有限制
33)多浏览器验证
3、性能测试
1)压力测试:实际破坏一个Web应用系统,测试系统的反应,测试系统的限制和故障恢复能力
2)负载测试:在某一负载级别上的性能,包括某个时刻同时访问Web的用户数量、在线数据处理的数量
3)强度测试:测试对象在性能行为异常或极端条件下(如资源减少或用户过多)的可接受性,以此验证系统软硬件水平
4)数据库容量测试:通过存储过程往数据库表中插入一定数量的数据,看是否能及时显示
5)预期指标的性能测试:在需求分析和设计阶段会提出一些性能指标,对于预先确定的性能要求要首先进行测试
6)独立业务性能测试:对核心业务模块做用户并发测试,包括同一时刻进行完全一样的操作、同一时刻使用完全一样的功能
7)组合业务性能测试:模拟多用户的不同操作,最接近实际用户使用情况,按用户实际的实际使用人数比例来模拟各个模块的组合并发情况
8)疲劳强度性能测试:系统稳定运行情况下,以一定负载压力来长时间运行系统的测试
9)网络性能测试:准确展示带宽、延迟、负载、端口的变化是如何影响用户的相应时间的
10)大数据量性能测试:实时大数据量,模拟用户工作时的实时大数据量;极限状态下的测试,系统使用一段时间,积累一段数据量时能否正常运行,以及对前面两种进行结合
11)服务器性能测试:在进行用户并发性能测试、疲劳强度、大数据量性能测试时,完成对服务器性能的监控,并进行评估
12)一些特殊的测试:配置测试、内存泄漏的一些特殊测试
4、可用性测试(接口测试)
1)整体界面测试
2)多媒体测试
3)导航测试
5、客户端兼容性
平台测试:windows;unix;macintosh;linux
浏览器测试:不同厂商的浏览器对Java、Javascript、ActiveX、plug-ins或不同的HTML的规格
不同的支持;框架和层次结构在不同浏览器也不同的显示
6、安全性
安全性测试要求:
1)能够对密码试探工具进行防范
2)能够防范对Cookie攻击的常用手段
3)敏感数据保证不用明文传输
4)能防范通过文件名猜测和查看html文件内容获取重要信息
5)能保证在网站收到工具后在给定时间内恢复,重要数据丢失不超过1小时
web 的性能测试工具:
随着Web 2.0技术的迅速发展,许多公司都开发了一些基于Web的网站服务,通常在设计开发Web应用系统的时候很难模拟出大量用户同时访问系统的实际情况。
因此,当Web网站遇到访问高峰时,容易发生服务器响应速度变慢甚至服务中断。
为了避免这种情况,需要一种能够真实模拟大量用户访问Web应用系统的性能测试工具进行压力测试,来测试静态HTML页面的响应时间,甚至测试动态网页(包括ASP、PHP、JSP等)的响应时间,为服务器的性能优化和调整提供数据依据。
1、企业级自动化测试工具WinRunner
Mercury Interactive公司的WinRunner是一种企业级的功能测试工具,用于检测应用程序是否能够达到预期的功能及正常运行。
2、工业标准级负载测试工具Loadrunner
LoadRunner 是一种预测系统行为和性能的负载测试工具
3、全球测试管理系统testdirector
TestDirector 是业界第一个基于Web的测试管理系统,它可以在您公司内部或外部进行全球范围内测试的管理。
4、功能测试工具Rational Robot
IBM Rational Robot 是业界最顶尖的功能测试工具,它甚至可以在测试人员学习高级脚本技术之前帮助其进行成功的测试。
它集成在测试人员的桌面IBM Rational TestManager 上,在这里测试人员可以计划、组织、执行、管理和报告所有测试活动,包括手动测试报告。
这种测试和管理的双重功能是自动化测试的理想开始。
5、单元测试工具xUnit系列
目前的最流行的单元测试工具是xUnit系列框架,常用的根据语言不同分为JUnit(java),CppUnit(C++),DUnit (Delphi ),NUnit(.net),PhpUnit(Php )等等。
该测试框架的第一个和最杰出的应用就是由Erich Gamma (《设计模式》的作者)和Kent Beck(XP(Extreme Programming)的创始人 )提供的开放源代码的JUnit.
6、功能测试工具SilkTest
Borland SilkTest 2006属于软件功能测试工具,是Borland公司所提出软件质量管理解决方案的套件之一。
这个工具采用精灵设定与自动化执行测试,无论是程序设计新手或资深的专家都能快速建立功能测试,并分析功能错误。
7、性能测试工具WAS
Microsoft Web Application Stress Tool 是由微软的网站测试人员所开发,专门用来进行实际网站压力测试的一套工具。
透过这套功能强大的压力测试工具,您可以使用少量的Client端计算机仿真大量用户上线对网站服务所可能造成的影响。
8、自动化白盒测试工具Jtest
Jtest是parasoft公司推出的一款针对java语言的自动化白盒测试工具,它通过自动实现java的单元测试和代码标准校验,来提高代码的可靠性。
parasoft同时出品的还有C++ test,是一款C/C++白盒测试工具。
9、功能和性能测试的工具JMeter
JMeter是Apache组织的开放源代码项目,它是功能和性能测试的工具,100%的用java实现。
10、性能测试和分析工具WEBLOAD
webload是RadView公司推出的一个性能测试和分析工具,它让web应用程序开发者自动执行压力测试;webload通过模拟真实用户的操作,生成压力负载来测试web的性能。
Ⅶ Web服务器配置方法教程
服务器是一种高性能计算机,作为网络的节点,存储、处理网络上80%的数据、信息,因此也被称为网络的灵魂。那么该如何配置Web服务器呢?如果你不知道,请看我整理的Web服务器配置方法详解吧!
2、单击窗口中的“添加/删除Windows组件”图标,弹出“Windows组件向导”对话框。
3、选中“向导”中的“应用程序服务器”复选框。单击“详细信息”按钮,弹出“应用程序服务器”对话框。
4、选择需要的组件,其中“Internet信息服务(IIS)”和“应用程序服务器控制台”是必须选中的。选中“Internet信息服务(IIS)”后,再单击“详细信息”按钮,弹出“Internet信息服务(IIS)”对话框。
5、选中“Internet信息服务管理器”和“万维网服务”。并且选中“万维网服务”后,再单击“详细信息”按钮,弹出“万维网服务”对话框。
6、其中的“万维网服务”必须选中。如果想要服务器支持ASP,还应该选中“Active Server Pages”。逐个单击“确定”按钮,关闭各对话框,直到返回图1的“Windows组件向导”对话框。
7、单击“下一步”按钮,系统开始IIS的安装,这期间可能要求插入Windows Server 2003安装盘,系统会自动进行安装工作。
8、安装完成后,弹出提示安装成功的对话框,单击“确定”按钮就完成了IIS的安装。
友情提示:如果想要同时装入FTP服务器,在“Internet信息服务(IIS)”对话框中应该把“文件传输协议(FTP)服务”的复选框也选中。
在IIS中创建Web网站
打开“Internet 信息服务管理器”,在目录树的“网站”上单击右键,在右键菜单中选择“新建→网站”,弹出“网站创建向导”:
网站描述就是网站的名字,它会显示在IIS窗口的目录树中,方便管理员识别各个站点。本例中起名为“枝叶的网站”。
网站IP地址:如果选择“全部未分配”,则服务器会将本机所有IP地址绑定在该网站上,这个选项适合于服务器中只有这一个网站的情况。也可以从 下拉式列表框中选择一个IP地址(下拉式列表框中列出的是本机已配置的IP地址,如果没有,应该先为本机配置IP地址,再选择。)
TCP端口:一般使用默认的端口号80,如果改为其它值,则用户在访问该站点时必须在地址中加入端口号。
主机头:如果该站点已经有域名,可以在主机头中输入域名。
主目录路径是网站根目录的位置,可以用“浏览”按钮选择一个文件夹作为网站的主目录。
网站访问权限是限定用户访问网站时的权限,“读取”是必需的,“运行脚本”可以让站点支持ASP,其它权限可根据需要设置。
单击“下一步”,弹出“完成向导”对话框,就完成了新网站的创建过程,在IIS中可以看到新建的网站。把做好的网页和相关文件复制到主目录中,通常就可以访问这个网站了。
访问网站的方法是:如果在本机上访问,可以在浏览器的地址栏中输入“http://localhost/”;如果在网络中其它计算机上访问,可以在浏览器的地址栏中输入“http://网站IP地址”。
说明:如果网站的TCP端口不是80,在地址中还需加上端口号。假设TCP端口设置为8080,则访问地址应写为“http://localhost:8080/”或“http://网站IP地址:8080”。
网站的基本配置
如果需要修改网站的参数,可以在“网站名字”上单击右键,在右键菜单中选择“属性”,可以打开“网站属性”对话框。
1、“网站”标签
“网站标识”:可以设置网站名字、IP地址、端口号。单击“高级”按钮可以设置主机头名。
2、“主目录”标签
在本地路径中可以设置主目录的路径名和访问权限。
3、“文档”标签
默认文档是指访问一个网站时想要打开的默认网页,这个网页通常是该网站的主页。如果没有启用默认文档或网站的主页文件名不在默认文档列表中,则访问这个网站时需要在地址中指明文件名。
默认文档列表中最初只有4个文件名:Default.htm、Default.asp、index.htm和Default.aspx。我用 “添加”按钮加入了一个index.asp,并用“上移”按钮把它移到了顶部。这主要是因为我的网站的主页名为“index.asp”,所以应该把它加入 列表,至于是否位于列表顶部倒是无关紧要的。
经过以上配置,一个Web网站就可以使用了。把制作好的网页复制到网站的主目录中,网站主页的文件名应该包含在默认文档中。打开浏览器,在地址栏中输入“http://本机IP地址”,就可以打开网站的主页。其它页面可以用网页中的超链接打开。
虚拟目录
虚拟目录可以使一个网站不必把所有内容都放置在主目录内。虚拟目录从用户的角度来看仍在主目录之内,但实际位置可以在计算机的其它位置,而且虚拟目录的名字也可以与真实目录不同。如:
图中用户看到的一个位于主目录下的文件夹“pic”,它的真实位置在服务器的“D:myimage”处,而主目录位于“C:mywww” 处。假设该网站的域名是“www.abc.com”,则用户访问“http://www.abc.com/pic/文件1”时,访问的实际位置是服务器的 “D:myimage文件1”,所以虚拟目录的真实名字和位置对用户是不可知的。
创建虚拟目录的方法 :
打开 Internet 信息服务窗口,在想要创建虚拟目录的 Web 站点上 单击右键,选择“新建”→“虚拟目录”。弹出虚拟目录创建向导:
别名是映射后的名字,即客户访问时的名字;
路径:服务器上的真实路径名,即虚拟目录的实际位置;
访问权限:指客户对该目录的访问权限。
单击“下一步”按钮,弹出完成对话框,虚拟目录就建立成功了。把相关文件复制到虚拟目录中,用户就可以按照虚拟的树形结构访问到指定文件了。
通常虚拟目录的访问权限、默认文档等都继承自主目录,如果需要修改,可在“Internet 信息服务管理器”中的虚拟目录上单击右键,选择“属性”,就可以修改虚拟目录的参数设置了。
补充:服务器介绍
服务器,也称服务器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。
服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
在网络环境下,根据服务器提供的服务类型不同,分为文件服务器,数据库服务器,应用程序服务器,WEB服务器等。
相关阅读:服务器常见问题有哪些
1.系统蓝屏、频繁死机、重启、反映速度迟钝
服务器的与我们平常电脑不论是硬件结构还是运行系统,都是极其类似的。因此,就如同我们的电脑一样,一样可能会感染病毒,同样会因为系统漏洞、软件冲突、硬件故障导致死机、蓝屏、重启等故障,同样会因为垃圾缓存信息过多而导致反应迟钝。
2.远程桌面连接超出最大连接数
由于服务器默认为允许连接数为2个,如果登陆后忘记注销,而是直接关闭远程桌面的话,服务器识别此次登陆还是留在服务器端的。出现这种情况,最常见的就是重启服务器,但是,如果是高峰期,重启服务器带来的损失是显而易见的。那么此时,就可以利用mstsc/console指令进行强行登陆了。打开“运行”框,键入“mstsc/v:xxx.xxx.xxx.xxx(服务器IP)/console”,即可强行登陆到远程桌面了。
3.无法删除的文件该怎么清理
遇到这种情况,可能是该文件还在运行中,可以重启删之,或者运行CMD,输入arrtib-a-s-h-r想要删除的文件夹名,最后输入del想要删除的文件夹名即可删除,运行该命令后无法恢复,请慎用。
4.系统端口隐患
对于服务器来说,首要保障稳定性和安全性。因此,我们仅需保证服务器最基本的功能即可,就像声卡都是默认禁止的。我们并不需要太多的功能,也不需要太多的端口支持。像一些不必要,而且风险较高的端口大可封掉。而一些必要的,又有风险的端口,比如:3389、80等端口,我们可以通过修改注册表的方法将其设置不特殊的秘密端口,这样服务器端口的安全隐患就不复存在了。