前言
如果仅仅下载nginx,解压,运行nginx,是没啥错误,当使用 winsw 设置 nginx自启动 时,或配置修改了 conf,通常会出现各种错误。
错误列表
(一)
D:\service\wnmp\nginx>nginx -s reload
nginx: [error] OpenEvent("Global\ngx_reload_2128") failed (5: Access is denied)
如果仅仅下载nginx,解压,运行nginx,是没啥错误,当使用 winsw 设置 nginx自启动 时,或配置修改了 conf,通常会出现各种错误。
(一)
D:\service\wnmp\nginx>nginx -s reload
nginx: [error] OpenEvent("Global\ngx_reload_2128") failed (5: Access is denied)
既然,使用 wnmp 。没有图形界面,所有配置都需要手动设置,改变。做的站点也不止一个,如果所有站点的配置都写在一个conf文件中,看起来有点臃肿。对每个站点,进行单独配置比较有必要。
目前,php7
的稳定的版本是7.1.6。根据系统的不同,所下载的文件有所不同。给php提供了两种版本的:线程安全和非线程安全的。
NTS:Non Thread Safe 非线程安全, 在执行时不进行线程(Thread)安全检查
而选择线程安全还是非线程安全的php,通常由php的执行方式决定的。php有两种执行方式,ISAPI 和 FastCGI 。
在给网址做 登录注册 功能时,通常会用到ajax
。因为它不会刷新页面,给用户的体验很好。但会影响另外一个比较好的体验:浏览器不会弹出记住账号密码。
eg:
<div class="log-bodies">
<row>
<span>账号</span>
<input id="account" type="text" placeholder="请输入账号">
</row>
<row>
<span>密码</span>
<input id="password" type="password" placeholder="请输入密码">
</row>
<button class="log-btn">登录</button>
</div
$(".log-btn").click(function{
//do ajax post
});
默认状态下,php是不写日志信息的。php报错,在服务器上不会留下记录。可以通过 phpinfo() 来看其日志信息写入功能是否打开。如下图,是没打开的状态。
编辑 php.ini,找到error_log,将后边的日志路径加上去,并将前边的分号去掉。保存,重启php。如下:
;error_log = /data/server/php/etc/log/php_errors.log
执行下边命令:
vi /data/server/php/etc/php.ini
/etc/init.d/php-fpm restart
mkdir -p /data/server/php/etc/log #创建文件夹
chmod 777 /data/server/php/etc/log #给写入的权限
修改重启后,再看 phpinfo()。如下图。
如果,还没达到预期的结果。可以在看看 php.ini中,log_errors的功能是否on了。
composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。composer 不是一个包管理器。它在每个项目的基础上进行管理,在你项目的某个目录中进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。
composer 将这样为你解决问题:
其中一些库依赖于其他库。
你声明你所依赖的东西。
composer 会找出哪个版本的包需要安装,并安装它们(将它们下载到你的项目中)。
今天使用php7下的mongodb的扩展。不仅要安装mongodb和mongodb php扩展,还要安装mongodb php的类库。而这个类库,需要用composer来安装。于是,就要先学习composer的安装和用法了。
在安装mongodb php扩展之前,请先安装 mongodb。
php7以下扩展下载地址:http://pecl.php.net/package/mongo
查看 php mongodb的扩展的版本以及下载链接。php7在 http://pecl.php.net/package/mongodb 查看。这里的环境是php7,请注意。
cd /usr/local/src/php-mongodb
wget https://pecl.php.net/get/mongodb-1.2.8.tgz
tar -xzvf mongodb-1.2.8.tgz
mv /usr/local/src/php-mongodb/mongodb-1.2.8 /data/server/php-mongodb
mongodb下载地址:https://www.mongodb.com/download-center
https://www.mongodb.org/dl/linux
这里有对应系统对应版本的mongodb下载链接。目前,mongodb最新版本是 3.4.4。
方法1:
function Person()
{
var name;
Object.defineProperty(this, "name",{
set:function(value){
name = value;
},
get:function(){
return name;
}
})
}
defineProperty
是ECMAScript 5新增的特性。该方法有局限性。ie需要大于8以上的版本才可以。
方法2:
var name;
var Person = {
set name(value){
name = value;
},
get name(){
return name;
}
}