• Nginx支持.htaccess

    Nginx和Apache的.htaccess自然是一点关系都没有,然而由于历史原因非常多的Apache用户正在逐步使用Nginx,同样是WebServer,部分规则特性都是相通的,要想在Nginx使用.htaccess目前最简单的方法是把.htaccess翻译到nginx.conf。显然已经有人这么干了,并且还推出了网页版

    打开这个网页,把你的.htaccess内容粘贴到文本框中,点Convert按钮即可生成nginx.conf,并且这个工具还支持格式检查,非常好用。当然了,毕竟是程序翻译的,最好还是检查一下转换结果再使用。

    ...

    READ ALL

  • Git常用命令

    Git是一个分布式版本控制软件,目前非常流行,尤其是去中心化,相比SVN我更觉得Git更加好用

    # 它可以将当前目录初始化一个Git仓库
    $ git init
    
    # 克隆一个远程的仓库,这个地址一般有两种协议
    # 1、http
    # 2、ssh
    $ git clone [remote repo url]
    
    # 查看改了哪些文件
    $ git status
    
    # 添加修改的文件,后面的点表示添加所有文件
    $ git add .
    
    # 提交代码
    $ git commit -m "first commit"
    
    # 查看所有记录
    $ git log
    
    # 设置远程仓库
    $ git remote set-url origin [url]
    
    # 同步远程代码到本地
    $ git pull
    
    # 推送到远程分支
    $ git push -u origin master
    
    # 查看所有tag
    $ git tag
    
    # 打tag
    $ git tag v1.0.0
    
    # 列出所有本地分支
    $ git branch
    
    # 列出所有远程分支
    $ git branch -r
    
    # 如果本地和远程都要列出来
    $ git branch -a
    
    # 新建一个分支并切换
    $ git branch -b [branch name]
    
    # 切换回master分支
    $ git checkout master
    
    # 合并dev分支到master分支
    $ git merge --no-ff dev
    
    # 删除分支
    $ git branch -d dev
    

    ...

    READ ALL

  • 推荐一个JavaScript的变种脚本语言CoffeeScript

    首先,为什么会有CoffeeScript这种东西,原因特别简单,为了弥补JavaScript的不足。它的运行原理特别简单,按照它的语法编写程序,在丢到浏览器运行之前需要使用它的编译器编译成JavaScript代码。理论上,也属于编译语言,只不过传统上我们认识的编译语言都是编译成二进制

    使用之前需要安装

    npm install coffeescript
    

    ...

    READ ALL

  • 关于script标签

    script标签是我们主要引入或者编写JavaScript脚本代码的标签,通常它这么使用

    <script>
    // Here is JavaScript codes
    console.log('Hello World!');
    </script>
    

    也可以使用src指定远程脚本,这个远程脚本可以是任意URI资源

    app.js

    // Here is JavaScript codes
    console.log('Hello World!');
    

    index.html

    <script src="app.js"></script>
    

    ...

    READ ALL

  • yum命令出现 段错误 (core dumped)

    使用yum命令安装东西或者yum update时都提示以下错误:

    [root@lee ~]# yum update
    Loaded plugins: fastestmirror, refresh-packagekit
    Loading mirror speeds from cached hostfile
     * base: mirrors.tuna.tsinghua.edu.cn
     * extras: mirrors.tuna.tsinghua.edu.cn
     * soluslabs: mirror.eu1.soluslabs.net
     * updates: mirrors.tuna.tsinghua.edu.cn
    段错误 (core dumped)
    

    ...

    READ ALL

  • 一个可以使用浏览器通过SSH连接Linux的程序

    如果你总是在新的电脑上需要使用SSH客户端连接你的远程服务器,又不想没换一个环境就要安装一次SSH客户端,那么这个程序就是你需要的,地址

    把它下载到你的服务器端,按照教程设置并启动服务

    打开一款支持WebSocket协议的浏览器,输入服务器地址,顺利的话你应该能看到这个页面

    full

    如果输入正确的地址加授权信息,就能顺利登入系统

    ...

    READ ALL

  • JavaScript的namespace命名空间

    首先,JavaScript里没有namespace关键字用于声明命名空间。如果在NodeJS有模块的概念,但在浏览器下因为I/O的问题不能require加载模块,只能使用script标签一下加载所有脚本,当然也有一些插件实现了浏览器端require的做法。

    为了避免编写大型项目造成混乱,通常都是采用面向对象的方式组织代码结构,将属性,方法放入一个对象中。如以下代码

    var dog = {
      name: 'Petty',
      sayName: function () {
        console.log(this.name);
      }
    }
    
    dog.sayName();
    

    ...

    READ ALL

  • Python也可以这样实现多行注释

    Python程序的注释跟其它语言有点不一样,对于习惯了使用/**/多行注释的人来说,在Python中只能使用#号进行单行注释很痛苦。

    # 这里是单行注释
    # a = 50
    # b = 10
    # c = 10
    

    其实我们可以通过多行文本定义的格式实现多行注释

    '''
    # 这里是多行注释
    a = 50
    b = 10
    c = 10
    '''
    

    这个方法感觉还不错,跟/**/多行注释用起来没啥区别,这在调试代码的时候很管用,可以直接使用多行文本定义符号注释掉部分代码。也许Python的多行文本定义功能本来也可以充当注释用的,当然这毕竟是文本

    ...

    READ ALL

  • PHP通过JSON格式定义字面量对象

    PHPer都知道PHP是不支持字面量了,至少目前版本都不支持。比如,在JavaScript中可以这样定义object

    var o = {'name': 'qttc', 'url': 'www.qttc.net'};
    console.log(o.name);
    

    虽然JSON并不等同于JavaScript中的Object格式,但很接近

    Python中定义字典,也可以这样定义:

    o = {'name': 'qttc', 'url': 'www.qttc.net'}
    print o['name']
    

    但在PHP中这么定义object:

    ...

    READ ALL

  • Linux du命令使用

    使用Win平台习惯后在Linux下查看目录列表时希望能看到实际文件的大小,我们可以使用du命令查看

    命令格式

    du [options] [path]

    常用参数有

    • -a or -all 为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况。
    • -b or -bytes 显示目录或文件大小时,以byte为单位。
    • -c or -total 除了显示目录或文件的大小外,同时也显示所有目录或文件的总和。
    • -D or -dereference-args 显示指定符号连接的源文件大小。
    • -h or -human-readable 以K,M,G为单位,提高信息的可读性。
    • -H or -si-h参数相同,但是K,M,G是以1000为换算单位,而不是以1024为换算单位。
    • -k or -kilobytes 以1024 bytes为单位。
    • -l or -count-links 重复计算硬件连接的文件。
    • -L<符号连接> or -dereference<符号连接> 显示选项中所指定符号连接的源文件大小。
    • -m or -megabytes 以1MB为单位。
    • -s or -summarize 仅显示总计,即当前目录的大小。
    • -S or -separate-dirs 显示每个目录的大小时,并不含其子目录的大小。
    • -x or -one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
    • -X<文件> or -exclude-from=<文件> 在<文件>指定目录或文件。
    • --exclude=<目录或文件> 略过指定的目录或文件。
    • --max-depth=<目录层数> 超过指定层数的目录后,予以忽略。
    • --help 显示帮助。
    • --version 显示版本信息。

    ...

    READ ALL