Month: May 2013

  • EasyPHP Dev Server 13.1修复

    以前我在本机上进行PHP开发和测试用的WAMP组合来自Apache Friends的XAMPP,但是我一直在配置多个VHOST的时候碰到问题,网上搜索也没有什么帮助,所以一直想找个替代品。

    2个月前我开始使用来自EasyPHP的EasyPHP Dev Server(当前版本是13.1,VC9,马上会放出需要VC11支持的版本)。

    它的优点很多:

    • 具有一个简明的WEB管理界面。
    • 增加VHOST非常简易,可以通过其外挂的插件在WEB界面中进行添加。需要注意的是:增加第一个VHOST的时候,其inc_virtual_hosts.conf会出错(主要是换行的问题),并造成EasyPHP无法启动。只要人肉修改inc_virtual_hosts.conf文件即可。
    • 内置支持XDEBUG,不用再另行配置。

    屏幕截图(35)

    但是它也有一个致命缺点:如果EasyPHP异常退出,即没有先Exit的情况进行关机或重启,那么再次重启EasyPHP时,会出现类似:

    unexpected end of mysql see the log file

    然后EasyPHP无法启动。

    EasyPHP也许是太新,它的论坛里只有寥寥几个帖子,但是也谈到了这个问题。回帖中给出的方案根本没有用。当然,重装整个EasyPHP肯定可以解决问题,但是要从头配置也很麻烦。 经过我的琢磨,解决方案如下:

    1. 在EasyPHP正常运行的状态下,备份所有的MySQL数据文件。它应该位于EasyPHP安装目录下的binaries/mysqldata中。
    2. 如果出现上述的问题,那么恢复步骤为:
      1. 退出EasyPHP
      2. 删除上述目录中下的所有ibd文件
      3. 启动EasyPHP,确保启动正常,可以访问本机的站点(当然由于此时数据库已经破损,因此数据显示等肯定不正常)。这一步很重要。
      4. 再次终止并退出EasyPHP
      5. 将备份的idb文件拷贝回原处
      6. 再次重新启动EasyPHP
  • 制作、发布电子书的一般步骤

    这里说的电子书格式仅限于epub和md格式。严格的说,md格式不是电子书的一种,只是在我的制作过程中会用到md格式来作为媒介最终制作epub电子书,同时md格式的文本也可以发布到我用的Wiki平台。

    使用到的软件

    一般步骤

    如果你是自己写作,那么电子书的内容来源就是你的原创。我的建议是用Markdown Pad2进行创作,MP2可以拷贝输出md格式——于是就可以无缝粘贴到DokuWiki。当然,要显示md格式的wiki文档,需要为DokuWiki安装一个插件,而且页面名称应该以md结尾。MP2也可以拷贝输出html格式,于是可以进一步到Sigil中进行编辑。

    如果你是转换格式,那么来源就是你下载的文档。

    下载的文档有多种格式,Sigil可以打开所有的未加密的epub文档,如果是html文档,我的建议是拷贝所有的html格式的内容到Sigil中去,由Sigil来完成epub的建立,如果是txt文档,我的建议是通过MP2编辑,然后再对应的输出md格式或者html格式。

    在Sigil中,epub是通过各个章节来排列顺序的,同时,它会将<h?>之类的html标记翻译到TOC中对应的标题层级。因此,需要特别注意<h?>的标记是否正确嵌套,否则生成的TOC一定是错乱的——虽然它能带你到正确的地方。

    epub中图片的处理,在Sigil中也可以轻松做到。我一般是将图片加入到epub中,然后在需要用到图片的地方用类似<img src=”../Images/123.jpg”/>的方式加以链接。

    Sigil对HTML的验证目前还是停留在XHTML 1.0上,所以<img>这样的html标记必须加上/结束。Sigil支持html源代码视图的编辑,并且在保存和切换到书籍视图的时候会进行html校验,保证代码的严格性。

    屏幕截图(34)

    另外,最好创建一个titlepage.html,就放一张书籍的封面。

    通过Sigil创建的epub书籍,一般已经可以传到iPad、Android设备上用相应的软件进行阅读。但是为了更好的保证兼容性,我建议用Calibre最后进行一下微调。这个步骤很紧要,如果不进行这个步骤,有可能epub出现乱码——在这点上,iBooks的兼容性要好一些,但是Android设备的就比较差一些。

    本文收录于[go4pro.org]

  • 对Thunderbird进行一些配置

    一、签名和加密的邮件。

    pMq在G+里分享了一个帖子(原帖在这里),介绍了用GPG加密邮件和文件的简要过程。简单看了一下,决定也在我的电脑上折腾一下。

    我的台式机使用的是Win8系统,邮件系统用的是Thunderbird,于是就选择安装它的插件Enigmail。当然之前在电脑上最好装上Cygwin,因为我们要用到其中的gpp命令等。 获得钥匙对的过程我实在我的服务器上进行的,我将我的公钥已经传递到keys.gnupg.net,如果你搜索”Taylor Ren”或者我的邮箱地址”taylor.ren@gmail.com”,就可以找到我的公钥了。当然,也可以直接用我的公钥ID:F5332FBF来直接定位。

    当然,为了保险起见,还要核对一下指纹。我的公钥的指纹值是:97B5 4F6B 57AD AAC9 01FD B0DF 02C0 AB85 F533 2FBF。

    我已经将我的公钥和私钥导出到文本文件,并拷贝到台式机中备用。 接着是在Thunderbird中下载、安装、配置Enigmail。这个过程也很简单,只要在合适的时候将公钥和私钥文本提供一下即可。

    image

    发送邮件前可以选择“签名”和“加密”。签名的话邮件还是明文发送,但是会附加一段数字签名;如果是加密,需要收件方提供他的公钥。

    另外,如果是中文邮件,必须选择UTF8编码,否则无论是签名还是加密,中文都会变成???。

    二、将用户Profile保存在别的“空一些”的位置

    今天用Folder Size分析了一下为什么我的C盘100G的空间只有7G空了? 结果发现是我设置的Thunderbird要下载了我Gmail中所有的邮件,因此造成Profile这个文件夹巨大无比(20G左右)。于是我就将我的Profile转移到另外一个盘去。

    要做到这点,需要使用命令行启动Thunderbird:

    thunderbird.exe –P这个命令会弹出一个Thunderbird Profile管理器:

    image

    我创建了一个新的Profile,然后设置了一下,同时删除老的Profile(因为比较大,所以删了大概十几分钟)。以后直接进入Thunderbird就可以了。