vi /usr/local/nginx/conf/nginx.conf
开头有一个
#user nobody;
把井号删掉,nobody改为 用户名 [空格] 用户组,例如
user nginx web;
即以web组的nginx用户来运行nginx.
修改完以后
/usr/local/nginx/sbin/nginx -s reload
重启nginx
注:具体重启的命令在具体的环境下有区别。所有的路径也一样,请注意。
来源:http://my.oschina.net/cxz001/blog/97206
兼容多种模块规范的 javascript 模块化写法
;(function(name,definition){
var hasDefine = typeof define === 'function', // 检测上下文环境是否为 AMD 或者 CMD
hasExports = typeof module !== 'undefined' && module.exports; // 检查上下文是否为 node
if(hasDefine){
define(definition); // AMD 或者 CMD 环境
}else if(hasExports){
module.exports = definition(); // 定义为普通 node 模块
}else{
this[name] = definition(); // 将模块的执行结果挂载在 window 变量中,在浏览器中 this 指向 window 变量。
}
})('hello',function(){ // 此处 hello 只是作为模块化的示例名称
var hello = function(){};
return hello;
})
不过此种写法要保证前端引用或者后端使用没有全局的 define 函数覆盖 AMD 或者 CMD 的 define 函数。
此代码来源于 深入浅出Node.js P45 2.7.4,此处为记录以及熟悉。
在经过了IE6 IE7的洗礼之后,我们终于可以放心的使用 inline-block 了,但是在使用 inline-block 的时候,我们总会发现很多莫名其妙的空隙出现在两个 inline-block 元素之间,例如我们的代码如下所示:
<nav>
<a href="#">One</a>
<a href="#">Two</a>
<a href="#">Three</a>
</nav>
nav a {
display: inline-block;
padding: 5px;
background: red;
}
然后在浏览器里面的结果就是:
但是一般情况下,我们这么写,总是想让各个元素紧挨在一起的,如果需要中间有空隙,那我们可以通过 css 来更精确地控制。难道这个是一个 bug。刚刚好可以方便的使用这个属性值了,又出现 bug 了,难道又要骂娘了?
其实,了解了背后的原理,就明白这里其实并不是一个 bug,因为对浏览器来说,回车和换行都会被当做有效地字符,只是看不见而已,由于其被当做有效地字符,所以这个空隙的大小会随着定义的文字大小而改变,所以这里也就是为什么我们不需要它的出现,而要自己控制间隙的原因。那么既然知道了产生这个问题的原意,那就有解决方案来应对它。
方法一,可以通过代码来去掉这个inline-block 元素之间的空格。
<nav>
<a href="#">
One</a><a href="#">
Two</a><a href="#">
Three</a>
</nav>
或者
<nav>
<a href="#">One</a
><a href="#">Two</a
><a href="#">Three</a>
</nav>
或者
<nav>
<a href="#">One</a><!--
--><a href="#">Two</a><!--
--><a href="#">Three</a>
</nav>
然后,这就解决了这个问题,主要就是想办法去掉那个换行或者空格。但是这样子的话,会让我的结构很不好看,尤其是对于处女座的前端来说。
方法二:负边距
nav a {
display: inline-block;
margin-right: -4px;
}
此时需要给相应的元素以负边距来抵消产生的空隙,但是上面的原因说过了,由于跟其字体大小有关系,所以在具体的情况下,需要更具字体来调整。风险是,万一用户系统中没有你设定的字体呢?
方法三:不写结束标签
<ul>
<li>one
<li>two
<li>three
</ul>
方法四:字体大小 0
由于空隙来源于字符,那我让他为 0 的大小不就行了?对嘛,真聪明。
nav {
font-size: 0;
}
nav a {
font-size: 16px;
}
不过,这样的方式,在某些平台以及某些浏览器上是有 bug 的。而且,如果使用 em 作为单位,那么下面的文字再怎么设置都是 0 了(em相对于父级)。
反正,每种方法都不算优雅,但基本都可以解决问题。
但或者,我们有可能根本就不需要 inline-block ,float 如果好用的话。或者以后可以用 flexbox 了。美好的愿望,在国内。
来源于:Fighting the Space Between Inline Block Elements 按自己的理解翻译,未忠实于原文。
本来打算翻译呢,一个手抖给弄丢了,不过这里找到了一个维基百科的中文版本,维基百科的版本质量很不错的,大家可以看看吧,自己也做个记录。
请查看中文版的 HTTP 状态码:维基百科 HTTP 状态码
这是 W3C 的标准:W3C Status Code Definitions