Windows主机上如何实现Rewrite

首先到iis官网上下载IIS URL Rewrite 2.0并安装

http://www.iis.net/downloads/microsoft/url-rewrite

下载安装IIS URL Rewrite 2.0

安装完成后重启一下机器,就会在IIS管理器中看到URL重写的功能区

IIS管理器Rewrite功能

注:IIS URL Rewrite 2.0仅在IIS 7.0及以上版本才能正常工作

双击URL重写图标,进入URL重写页面,点击右侧添加规则

URL重写添加规则

这里我参考官网的例子,通过正则表达式重写^article.php/([0-9]+)/([_0-9a-z-]+)到页面article.aspx?id={R:1}&title={R:2}

如重写http://localhost/article.php/234/some-title页面将234和some-title分别作为参数传给article.aspx文件,即重写到http://localhost/article.aspx?id=234&title=some-title配置后的规则截图如下:

IIS重写正则表达式一

IIS重写正则表达式二

注:可通过测试模式来验证正则表达式书写是否正确

配置完成后访问http://localhost/article.php/234/some-title页面的效果如下:

重写到article.aspx
如果您打开web根目录(wwwroot/)会发现下面多了一个文件web.config文件,它类似我们Apache服务器中的.htaccess文件,本例中对应的web.config文件内容为:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
  <rules>
    <rule name="Rewrite to article.aspx">
      <match url="^article.php/([0-9]+)/([_0-9a-z-]+)" />
      <action type="Rewrite" url="article.aspx?id={R:1}&title={R:2}" />
    </rule>
  </rules>
</rewrite>
    </system.webServer>
</configuration>

所以您也可以直接在该文件中完成规则的修改,另article.aspx的代码如下:

<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>URL Rewrite Module Test</title>
</head>
<body>

<h1>URL Rewrite Module Test Page</h1>


<table>

<tr>

<th>Server Variable</th>


<th>Value</th>

            </tr>


<tr>

<td>Original URL: </td>


<td><%= Request.ServerVariables["HTTP_X_ORIGINAL_URL"] %></td>

            </tr>


<tr>

<td>Final URL: </td>


<td><%= Request.ServerVariables["SCRIPT_NAME"] + "?" + Request.ServerVariables["QUERY_STRING"] %></td>

            </tr>

      </table>

</body>
</html>

后记:

在实际操作中,Alan需要将NewsDetail.php?newsid=976跳转到new/detail.aspx?ID=976,那么问题来了,通过上面的方法并不能正常跳转,而是报了404。这主要是因为请求链接中包含了问号,这里即做去问号做转义也是没有用的,本处需要用到的是{QUERY_STRING},有多少个字段就在conditions里添加多个人add:

<rule name="My Rewrite">
  <match url="^NewsDetail.php" />
  <conditions logicalGrouping="MatchAll">
    <add input="{QUERY_STRING}" pattern="newsid=([0-9]{1,4})" />
  </conditions>
  <action type="Rewrite" url="new/detail.aspx?ID={C:1}" />
</rule>

Windows新建文件改为默认UTF8

在Windows下进行编程,经常会发现html或php在输出中文时出现中文乱码的情况,而通过html中的http-equiv或php中的header指定为uft-8时也丝毫没有改变,当然这种文件在移植到Linux系统中也会出现乱码的情况。这是由于在Windows系统中通过右键创新文件时默认编码为ANSI,在记事本中通过文件>另存为…并在“编码”下拉框中选择UTF-8并保存即可解决。

通过记事本另存为utf-8格式

以上方法虽然有效,但如果每次都这样去另存为修改一下显然会很麻烦。要实现默认新建即为UTF-8格式可采用以下方法:

1.在C:\Windows\SHELLNEW下新建一个txt文件,选择一个名称,如UTF8.txt,并采用上述方法另存为UTF-8格式

2.Win+R,输入regedit进入注册表,并找到HKEY_CLASSES_ROOT\.txt\ShellNew,右键新建>字符串值,名称处输入FileName,数据处输入上一步中新建的文件名UFT8.txt

注册表新建文件

此时再去通过右键去新建文本文件时会发现默认就是UTF-8格式了。为保持完整性,附上网上建议的第三步,请大家根据具体情况决定是否添加。

3.在注册表里找到HKEY_CURRENT_USER\Software\Microsoft\Notepad,右键新建>DWORD,添加名称分别为fSavePageSettings和fSaveWindowPositions且值为1的内容。

注册表Notepad设置

以上方法可以完美解决右键新建的文件,但对于在开始菜单中直接打开记事本再保存的文件无效。

Windows系统下自动截图功能

本功能通过适用于Firefox的Pearl Crescent插件来实现,免费基础版安装地址:

http://pearlcrescent.com/products/pagesaver/pagesaverbasic-2.8.2.xpi

安装成功会在浏览器地址栏右侧出现一个照相机按钮,点击即可进行截屏。点击下拉框中的Page Saver Options…可以设置保存的文件名(包含%Y等变量),保存路径,图片格式等。

Pearl Crescent Page Saver选项

命令行实现方式:

默认情况下会提示firefox不是内部指令

‘firefox’ is not recognized as an internal or external command, operable program or batch file.

可以选择1.cd 到firefox安装目录,如C:\Program Files (x86)\Mozilla Firefox再执行如下命令(测试了添加环境变量未生效)

指定宽度和高度

firefox -saveimage http://alanhou.org/ -width 800 -height 600
设定延时:

firefox -saveimage http://alanhou.org/ -savedelay 1000
抓取Flash内容

firefox -saveimage http://www.adobe.com/ -savedelay 1000 -captureflash

 

在Windows上创建定时任务,以Win8为例,按下快捷键Win+X > Control Panel > System and Security(分类模式下) > Administrative Tools > Schedule Tasks,或在命令行中输入taskschd.msc

添加一个.bat文件,需要填写全路径,内容类似

C:/”Program Files (x86)”/”Mozilla Firefox”/firefox -saveimage http://alanhou.org/

若在保存时提示Task Scheduler cannot apply your changes.The user account is unknown, the password is incorrect,or the account does not have permission to modify the task. 请改用管理员权限进行测试或在我的电脑上右击点击管理输入管理员密码再添加定时任务。

Windows系统常见问题

如何获取目录下的所有文件名?
删错东西回收站清空了怎么恢复
如何设置Windows下的默认启动系统?
Win 8下如何打开控制面板?
Win 8系统下中文乱码问题
如何在Windows桌面添加mstsc等快捷方式
搜狗五笔输入法Shift键无法进行中英文切换

如何获取目录下的所有文件名?

获取系统指定文件夹下的文件名只需打开命令窗口,cd到对应的目录,然后执行dir/on/b>d:\list.txt,其中d:\list.txt是文件名称导出位置,可根据实际情况指定。/on/b为可选参数,/ON为按文件名排序参数,/B为只保留文件名和扩展名参数

Windows下获取目录中文件名称

删错东西回收站清空了怎么恢复

Win+R输入regedit然后找到

HEKEY_LOCAL_MACHIME > SOFTWARE > Microsoft > Windows >  CurrentVersion > Explorer > Desktop > Namespace 右键新建 > 项,并命名为

{645FF040-5081-101B-9F08-00AA002F954E}

然后把默认的值改成”回收站”或”Recycle Bin”,重启系统即可发现回收站中出现了被你删除的内容

注册表回收站设置

如何设置Windows下的默认启动系统?

很多人都习惯为Windows安装多系统,在开机时可以按上下键进行切换,但如果想要改变默认启动的系统该怎么办呢?

方法很简单,在”计算机”(或”我的电脑”)上右击>属性>高级系统设置>启动和故障恢复>设置,然后在”默认操作系统”的下拉框中选择您想要使用的默认启动系统再点”确定”保存即可。

Windows默认操作系统

Win 8下如何打开控制面板?

使用Win 8的朋友最不习惯的可能就是找不到习惯使用的开始菜单了.按下Win键可以进入Metro界面查看常用程序,但控制面板等内容又到哪里去找呢,可在桌面上通过快捷键Win+X来调出一个弹窗,其中就包含控制面板等选项。
Win 8控制面板

Win 8系统下中文乱码问题

安装Windows 8英文系统后,在安装中文软件或打开某些中文文档时会出现乱码的问题,这可以通过在控制面板中进行相应修改来予以解决,如下图中打开中文软件光影魔术手时欢迎界面会出现乱码
中文软件乱码
在Win 8中按下快捷键Win+X,选择Control Panel或按下快捷键P,点击Clock, Language, and Region,在新的页面中点击Region > Aministrative,点击Language for non-Unicode programs版块下的Change system locale…按钮,在弹出窗口中将Current system locale改成Chinese(Simplified, China),点击Ok, 然后在新的弹窗中点击Restart now确认重启
Windows系统区域设置
重启后再打开前面我们测试使用光影魔术手软件,会发现乱码问题已经得到了解决
光影魔术手欢迎页面

如何在Windows桌面添加mstsc等快捷方式

我们都知道可以通过右击将指定文件或文件夹添加为桌面快捷方式,但对于一些常见的系统命令,找到该文件会有些麻烦,下面以mstsc远程桌面为例来进行说明。

在桌面空白处右击新建(New)>快捷方式(Shortcut),在弹出窗口中输入mstsc并按enter键,然后点击完成(Finish)即可。

添加远程桌面

搜狗五笔输入法Shift键无法进行中英文切换

在使用搜狗输入法时有时会发现按下Shift键无法进行中英文切换,这会造成输入上的不方便,可以通过重新设置中英文快捷键的方法来进行解决。首先切换到搜狗五笔输入法,点击悬浮窗右侧的工具按钮,在弹出窗口中点击设置属性,然后在新窗口中点击快捷键,并在右侧中英文切换的首选和备选输入框中分别按下键盘左侧的Shift键和右侧的Shift键,变成如图效果后点击确定进行保存。以后再次按下Shift键就可以顺利进行中英文切换了。

搜狗输入法按Shift键中英文切换

常用命令

将FAT分区转为NTFS命令:convert e: /fs:ntfs

Windows主机常见问题

无法识别的属性“targetFramework”。请注意属性名称区分大小写
找到配置文件删除其中的如下两个部分:

targetFramework="4.0"
controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"

SQL Server 10751报错

相信使用sql server 2008的用户都遇到过过期无法启动,提示10751的错误的问题,这个就是评估版过期的提示。
如果网上提示的升级教程无效,可以使用以下方式,麻烦的是,每次启动机器都需要运行这个脚本,但是比自己手动调试要快多了。如果会弄的,可以将这个脚本放到启动文件夹中。

@echo 检测sqlserver服务是否已经启动,如果没有启动则启动  
set nowtime=%date%  
date 2016/05/01  
net start mssqlserver  
date %nowtime%  
pause  

可以将上面代码中的日期改为能打开sql的日期,然后将代码保存到text文本中,然后将文本的格式改为.bat文件

评估期已过,有关如何升级您的测试版软件请访问….

SQL Server 2008 R2评估期180天后就会出现如上提示因而无法打开SQL Server Management Studio进行操作

解决步骤:

第一步:进入SQL2008配置工具中的安装中心
第二步:再进入维护界面,选择版本升级
第三步:进入产品密钥,输入密钥(请自行百度)
第四步:点击下一步,直到升级完毕。

升级过程中如若出现以下的错误:

规则 SQL Server 2008版本升级失败 所选的SQL Server实例不满足升级矩阵要求

规则 SQL Server 2008版本升级失败 所选的SQL Server实例不满足升级矩阵要求

请将HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\ConfigurationState里的“CommonFiles”值改成3后再进行尝试

 

Windows系统下按F直接搜索,按R直接进入命令输入界面,按U后退… 这是由于开启了粘滞键,连按5次Shift才会开启,如果不需要可以在控制面板中关闭该设置

Windows下字体安装

虽然Windows操作系统集成了很多字体,但追求新潮的网友们总是有自己特别的需求,网上提供有多种多样的字体供您下载,可是如何安装这些字体呢?这些字体格式的后缀名通常为.ttf,安装也很简单,只需解压缩从网上下载的字体文件到C:\Windows\Fonts目录下(Windows7需要管理员权限)。如果此时您开启Photoshop, Illustrator等程序的话建议重启一下程序以应用新安装的字体。

Windows字体安装

下图为Alan在Adobe Photoshop中应用Harry Potter字体后的截图,怎么样?是不是很简单?

Harry Potter字体