小编JuC*_*lot的帖子

在IIS 7上向PHP添加写入权限

我需要一个PHP脚本才能在目录中拥有写入权限.PHP 5.3在IIS 7下运行为FastCGI,Windows Server 2008为OP.在我的php错误日志中,当脚本尝试写入文件时,我得到"权限被拒绝".

我该如何解决这个问题?我试图将所有权利交给IIS_IUSR和IUSR_myservername(右键单击我的文件夹),但它没有用.

任何帮助都会非常感激,

问候,

朱利安

php iis-7 file-permissions windows-server-2008

36
推荐指数
3
解决办法
5万
查看次数

Mongoose中的嵌套数组

在我正在处理的集合中,文档如下所示:

{
    name: 'Myname',
    other: 'other',
    stuff: [
        ['something', 12, 4, 'somethingelse'],
        ['morestuff', 2, 4, 8],
        ['finally', 12, 'again', 58],

    ]
}
Run Code Online (Sandbox Code Playgroud)

我写了这个Mongoose模式来访问它:

var MyDocSchema = new Schema({
    name: String,
    other: String,
    stuff: [],
});
Run Code Online (Sandbox Code Playgroud)

当我查询文档时,一切正常,控制台中显示的输出是正确的.但是,当我尝试做console.log(myDoc.stuff)时,我得到了以下内容:

['something', 12, 4, 'somethingelse', 'morestuff', 2, 4, 8, 'finally', 12, 'again', 58]
Run Code Online (Sandbox Code Playgroud)

代替

[
    ['something', 12, 4, 'somethingelse'],
    ['morestuff', 2, 4, 8],
    ['finally', 12, 'again', 58],

]
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?谢谢您的帮助!!

mongoose mongodb node.js

5
推荐指数
1
解决办法
2万
查看次数

使用同步驱动程序在Laravel 4中排队电子邮件

我只想在用户注册时排队电子邮件.所以我在用户发布注册表时这样做:

Mail::queue('emails.activate', $data, function($message) use ($user)
{
  $message->from('no-reply@mysite.com', 'Mysite.com');
  $message->to($user->email, $user->username)->subject('Welcome');
});
Run Code Online (Sandbox Code Playgroud)

队列侦听器正在运行(php artisan queue:listen),并且一个管理程序进程确保它会在停止时重新启动.

它工作正常,用户收到电子邮件但注册时的HTTP响应非常慢,正如我想要的那样,如果我试图直接发送电子邮件.如果我评论上面的所有排队代码,HTTP响应时间就好了.

我在queue.app中使用同步驱动程序:

'default' => 'sync',
'connections' => array(

    'sync' => array(
        'driver' => 'sync',
    ),
    etc...
Run Code Online (Sandbox Code Playgroud)

最后,我使用postfix运行自己的私有服务器(Ubuntu).有人可以帮我弄清楚为什么在我排队电子邮件时反应如此缓慢?

php email queue laravel-4

5
推荐指数
1
解决办法
6887
查看次数

Doctrine Mongodb ODM和DateTime查询

我可以在这个问题上使用一些帮助.我正在使用Symfony2 + mongodb + doctrine创建一个应用程序.我只想使用Doctrine ODM查询过去5分钟内登录过的所有用户.我有一个User集合,其中包含一个名为date_last_login的日期字段.

所以我尝试使用这样的querybuilder:

<?php
// Creating a DateTime object and susbtract 5 min from now
// local time is 15:40:05, timezone: 'Europe/Paris'
$_dateTime = new \DateTime();
$_interval5Min = new \DateInterval('PT5M');
$_dateTime->sub($_interval5Min);

$query = $this->createQueryBuilder('User')
                ->field('date_last_login')->gte($_dateTime)
                ->getQuery();
                ->execute();
Run Code Online (Sandbox Code Playgroud)

当我使用symfony2 profiler查看汇编的查询时,我得到的是:

db.User.find({ "date_last_login": { "$gte": new Date("Fri, 23 Dec 2011 15:30:05 +0100") } });
Run Code Online (Sandbox Code Playgroud)

看起来很好,除了日期提前10分钟而不是5分钟?我只是不明白.如果我转储我的php DateTime对象,日期是正确的:2011-12-23 15:35:05(15:40之前的五分钟).

所以我尝试组装相同的查询而不减少任何分钟,这一次,一切都很好:

<?php
// local time is 15:50:00
$query = $this->createQueryBuilder('User')
            ->field('date_last_login')->gte(new \DateTime())
            ->getQuery();
            ->execute();

// query is ok:
db.User.find({ "date_last_login": { …
Run Code Online (Sandbox Code Playgroud)

php mongodb symfony doctrine-orm doctrine-odm

4
推荐指数
1
解决办法
9590
查看次数

在crontab中使用wget来运行PHP脚本

我在我的Ubuntu服务器上设置了一个cron作业.基本上,我只是希望这个工作在另一台服务器上调用一个php页面.这个php页面将清理数据库中的一些东西.所以我认为用wget调用这个页面然后将结果发送到/ dev/null是一个好主意,因为我根本不关心这个页面的输出,我只是想让它做它的数据库清理工作.所以这是我的crontab:

0 0 * * * /usr/bin/wget -q --post-data 'pass=mypassword' http://www.mywebsite.com/myscript.php > /dev/null 2>&1
Run Code Online (Sandbox Code Playgroud)

(我发布了一个密码,以确保没有人可以运行脚本,但我).它就像一个魅力,除了wget每次在我的用户目录中写一个空页:下载php页面的结果.

我不明白为什么结果不发送到/ dev/null?对这个问题有什么想法吗?非常感谢你!

linux ubuntu wget crontab

2
推荐指数
2
解决办法
2万
查看次数