分类: Web

ngrok 配合 Visual Studio 的使用方法(可用于微信公众号开发)

首先以管理员方式启动VS。 在VS中启动网站调试,然后右下角右键点IISExpress的图标,选择 显示所有应用程序 : 选中你的网站项后,点击配置文件链接: 然后通过端口号(例如我这个是61754)快速搜索到要修改的位置,增加一条针对127.0.0.1的端口绑定: 保存之后,关闭VS。 以管理员方式启动CMD命令提示符,执行: netsh http add urlacl url=http://127.0.0.1:61754/ user=everyone 如果提示183错误,那就先执行以下删除命令,再去执行上面的那条命令: netsh http delete urlacl url=http://127.0.0.1:61754/ 然后以普通模式启动VS,调试运行网站,看看能否用 http://127.0.0.1:61754 访问到网站,没问题就继续。 把ngrok.exe添加到Windows防火墙的进站、出站规则里,都设为允许。 用CMD到ngrok的所在目录里执行: ngrok http 61754 启动后差不多就是这样的: 你就可以通过那个随机的网址从外网访问到自己的本机了,下面的请...

更多

将多个域名绑定到一台服务器的方法(Server 2012)

在Windows Server 2012的IIS中,只需要将多个网站都进行绑定配置: 多个网站之间的IP地址和端口都一样,只需将主机名设的不同,即可以了。 然后域名解析方面,全部域名都是A记录直接指向服务器IP地址即可,不用设置端口(A记录本身貌似也是不能设置端口的)。 这样访问到服务器的各个网站都是共用80端口的,IIS会根据域名来区别网站。 这种方式非常完美,不像隐性URL转发那样会有各种问题,实测同域名的多个子域名分别解析完全没有问题,不同主域名解析进来应该也不成问题的。 分享或转载本博客站点内的所有原创内容时,都必须遵循此协议: 姓名标示-非商业性-相同方式分享 4.0 国际 (CC BY-NC-SA 4.0) 同时必须附加指向本文页面或本博客首页的超链接。 除此之外的转载、分享方式都必须征得本博客作者的授权,否则将会诉诸法律。

更多

实现带图片迁移WordPress博客

本博客现已从新浪SAE迁出,记录一下带图片迁出的实现方式。 首先应当去后台导出所有内容: 下载后得到的是WordPress eXtended RSS文件,扩展名是xml。 然后去SAE的后台把源码全下载下来。 由于SAE的WordPress好像是修改版的,我索性从官网下了个新版的,上面下载到的源码里我只是用以导入主题、样式、插件。 然后需要编码下载一下原博客中的图片,这里只要写一个简单的爬虫,爬遍所有文章,取得其中的图片就可以了。 我是用.Net Winform程序实现的: 图上的两条正则表达式: http://skyd.sinaapp.com/archives/\d+ http://skyd-wordpress.stor.sinaapp.com.+?(png|jpg|jpeg|gif|bmp) 注意:我的文章URL是以数字命名的,你的如果不是就自己改改这里的表达式。 主要代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using Sy...

更多

修改 Win10 UWP APP 的标题栏颜色 (Javascript WinJS)

使用Javascript开发Win10 UWP应用时,修改标题栏颜色的方法和C#中使用的方法近似,略有名称和颜色对象创建方面的区别: var titleBar = Windows.UI.ViewManagement.ApplicationView.getForCurrentView().titleBar; titleBar.inactiveBackgroundColor = titleBar.buttonBackgroundColor = titleBar.buttonInactiveBackgroundColor = titleBar.backgroundColor = { a: 255, b: 0, g: 196, r: 245 }; titleBar.buttonHoverBackgroundColor = { a: 255, b: 70, g: 210, r: 244 }; titleBar.buttonPressedBackgroundColor = { a: 255, b: 0, g: 160, r: 224 }; titleBar.foregroundColor = Wi...

更多

使用JSON.NET反序列化抽象类或接口成员的方法

反序列化带有抽象或接口成员的类型时会遇到如下错误提示: Newtonsoft.Json.JsonSerializationException: Could not create an instance of type ITestInterface. Type is an interface or abstract class and cannot be instantiated. 问题和解决办法可以参考:http://stackoverflow.com/questions/15880574/json-net-how-to-deserialize-collection-of-interface-instances 这里总结一下,主要就是自己实现一个继承自SerializationBinder的类,来自己控制命名空间和程序集名称。 例如我们有一个文章类Article,里面有个成员是List<Paragraph>类型来表示段落列表,Paragraph是一个抽象类,其下面有若干个子类,表示诸如文本段落、列表段落、Markdown文本段落、引用段落等等,上述这些类都隶属于一个相同的程...

更多

正则表达式匹配“特定字符或开头或结尾”的方法

这个需求在标签搜索中常要用到,假设数据库中有类似以下标签字段字符串: 红色,樱桃红色,红色,玫红色,红宝石,红色尖晶石,玫红色石榴石,红色 这里我们要找完全匹配于“红色”的标签,为了方便测试准确性,我们使“红色”出现在了最前面、中间、最后面。 “红色”两个字前面可能是“,”或字符串开头,后面可能是“,”或字符串结尾,起先我想到的就是方括号匹配“[,^]”和”[,$]”,然而这根本不管用(C#、Mongodb和Javascript中都无效),原因不明,后来琢磨了半天,只能采用这样的形式才能匹配成功:”(^|,)”和”(,|$)” 最终的表达式为:(^|,)s*红色s*(,|$) 我们来检验一下: 替换后的结果: 分享或转载本博客站点内的所有原创内容时,都必须遵循此协议: 姓名标示-非商业性-相同方式分享 4.0 国际 (CC BY-NC-SA 4.0) 同时必须附加指向本文页面或本博客首页的超链接。 除此之外的转载、分享方式都必须征得本博客作者的授权,否则将会诉诸法律。

更多

解决MVC项目在IIS中不显示FontAwesome等字体图标的问题

本地测试无误,发布到服务器后字体图标就全不能显示了,IE里显示空,Chrome里显示长方形: 网站里MIME类型列表里是有.woff类型的: 不过不是“application/x-font-woff”,尝试在Web.config文件里覆盖之: <system.webServer> <staticContent> <remove fileExtension=”.woff” /> <!– In case IIS already has this mime type –> <mimeMap fileExtension=”.woff” mimeType=”application/x-font-woff” /> </staticContent> </system.webServer> 结果是无效的。 后来看到老外说貌似是MVC的BundleConfig问题: 尝试放弃使用Bundle方式引用FontAwesome的CSS,转而采用传统方式载入CSS: @*@Styles.Render(“~/Content/f...

更多

JQuery实现CheckBox的全选、取消全选、反选功能

在新版JQuery中一定要通过prop方法实现,而不是以前的attr方法,否则会出现第一次管用,再点就无效的问题。 有关区别详情参看:jQuery学习之prop和attr的区别 以下为实现代码,该代码会操作所有name属性为product的复选框。 (其中class为glyphicon的span标签是Bootstarp的图标表现方式,不需在意) <a href=”javascript:$(‘input[name=’product’]’).prop(‘checked’,true);” target=”_self” class=”btn btn-link ” role=”button”><span class=”glyphicon glyphicon-check”></span> 选择全部</a> <a href=”javascript:$(‘input[name=’product’]’).prop(‘checked’,false);” target=”_self” class=”btn btn-link ” role=”button”...

更多

JQueryMobile使用Ajax跳转后Popup组件失效问题溯源

今天遇到了同样问题,通过此文思路成功解决。 多个页面间也必须要保证ID唯一性,这真是有点麻烦,看来最好就是直接用Guid.NewGuid()为ID赋值了。 分享或转载本博客站点内的所有原创内容时,都必须遵循此协议: 姓名标示-非商业性-相同方式分享 4.0 国际 (CC BY-NC-SA 4.0) 同时必须附加指向本文页面或本博客首页的超链接。 除此之外的转载、分享方式都必须征得本博客作者的授权,否则将会诉诸法律。

更多

实现网页客户端实时自动解析Markdown为HTML内容

目前大多数相关项目实现的都是服务器端的Markdown语法解析,解析后将HTML代码返回给客户端,比如这个C#的项目:markdownsharp 我感觉这么轻量的格式没必要浪费服务器运算及带宽资源,还是通过Javascript实现客户端解析的方法最为实用,而且客户端解析的方式还能实现实时的所见即所得对照编辑,非常方便。 多番寻找和尝试,最终选定了markdown-js 首先从这里下载其浏览器版: https://github.com/evilstreak/markdown-js/releases 解压缩后在其js文件同目录下新建一个网页进行测试,代码如下: <!DOCTYPE html> <html> <body> <textarea id=”text-input” oninput=”this.editor.update()” rows=”6″ cols=”60″>Type **Markdown** here.</textarea> <div id=”preview”> </div> <scrip...

更多