我正在使用Laravel 4及其队列实现来完成一些异步任务,我想使用supervisord来管理工作进程(基本上artisan queue:listen),就像我过去用其他框架一样.
当我手动运行supervisord时,它启动工作进程就好了,但是当我将它作为服务运行时,工作进程会立即处理此消息:
2013-07-25 09:51:32,162 INFO spawned: 'myproject' with pid 4106
2013-07-25 09:51:32,875 INFO exited: myproject (terminated by SIGSEGV (core dumped); not expected)
Run Code Online (Sandbox Code Playgroud)
没有stdout或stderr输出.
这是工人的监督配置(没什么特别的):
[program:myproject]
command=php artisan queue:listen --queue=queue_name iron --env=staging
directory=/home/myuser/myproject
stdout_logfile=/var/log/supervisord/myproject.stdout
stderr_logfile=/var/log/supervisord/myproject.stderr
Run Code Online (Sandbox Code Playgroud)
它运行的服务器是一个CentOS 6.4 64位,来自cPanel/WHM的PHP 5.3.25(不是我的选择,它是一个闲置的服务器,我们做不了多少).
关于什么可能导致问题的任何想法?
我有一个分支master和分支feature,将其从签出master.
master从其他开发人员那里得到了提交,我经常合并master回来feature,以便跟上其他分支机构的新发展.
但是,每次执行此操作时git merge master,我都会在相同的文件中遇到相同的冲突,尽管我之前解决了冲突并提交了更改.
关于可能是什么原因以及如何预防它的任何想法?
谢谢!
好的旧正则表达式让我疯狂.
我需要将Apache 2.4中的所有流量从HTTP重定向到HTTPS,除了"/ bt/sub/[a_few_endings]",使用来自mod_alias的重定向(不能使用mod_rewrite).
我在我认识的所有在线测试人员中测试了以下正则表达式(例如http://regex101.com/)并且都确认正则表达式确实应该匹配除了我不希望它匹配的URL之外的所有内容:
^/(?!bt/sub/(went_active|success|cancel|expired)).*$
Run Code Online (Sandbox Code Playgroud)
据我所知,这应该与一切在HTTP://local.mysite.com,重定向到HTTPS://local.mysite.com,除了为以下四种:
仍然,Apache重定向所有内容,包括我不想重定向的上述URL.
我在SO中发现了几个类似的问题,但大多数都是根据mod_rewrite回答的,这不是我想要/需要的,人们说有用的那些对我没用.
这是我目前的虚拟主机配置:
<VirtualHost *:80>
ServerName local.mysite.com
RedirectMatch 302 ^/(?!bt/sub/(went_active|success|cancel|expired)).*$ https://local.mysite.com
DocumentRoot /home/borfast/projects/www/mysite/public
#Header set Access-Control-Allow-Origin *
SetEnv LARAVEL_ENV localdev
<Directory /home/borfast/projects/www/mysite/public/>
Options All
DirectoryIndex index.php
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
请帮助,防止我发疯:)
更新:有一些奇怪的事情:显然,当找到请求的URL /路径时,Apache忽略RedirectMatch中的表达式并重定向客户端,即使RedirectMatch告诉它不要.
为了测试这个,我在一个单独的VM中创建了一个新的虚拟主机,这个虚拟机刚安装了Ubuntu Trussty 64,并装载了Apache 2.4.这个新的虚拟主机只包含ServerName,RedirectMatch和DocumentRoot指令,如下所示:
<VirtualHost *:80>
ServerName testing.com
RedirectMatch 302 ^/(?!bt/sub/(went_active|success)$).*$ https://othersite.com/
DocumentRoot /home/vagrant/www
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
我创建了目录/home/vagrant/www/bt/sub/went_active以确保Apache可以访问两个可能的URL中的至少一个.尝试访问时http://testing.com:8080,我按预期重定向.
然后奇怪的是:访问时http://testing.com:8080/bt/sub/went_active,与我创建的目录匹配的URL,我仍然被重定向,即使我不应该,但在访问时 …
我刚刚在Laravel 4应用程序中安装了Cartalyst的Sentry 2,但我发现我必须通过指定单独运行该程序包的迁移--package=cartalyst/sentry,这使得自动部署无法进行.
有没有办法运行php artisan migrate并让它运行Sentry的迁移?
我正在尝试遵循https://jestjs.io/docs/en/api 中关于导入全局变量的建议,即:
However, if you prefer explicit imports, you can do import {describe, expect, it} from '@jest/globals'.
Run Code Online (Sandbox Code Playgroud)
但是,它不起作用。我在两个测试文件的顶部添加了导入,当我运行 jest 时,两个测试套件都失败并显示消息“不要在 Jest 测试环境之外导入 @jest/globals”。
我还在 eslint env 中配置了 jest,以防万一。
有人能指出我正确的方向吗?
我试图在 php.ini 中找出两个 UNIX 时间戳之间的差异(以分钟为单位)。
我写了这样一段代码:
$current_time = 1474719107000;
$start_time = 1474716600000;
$difference = $current_time - $start_time;
echo $difference/60;
Run Code Online (Sandbox Code Playgroud)
相差应该差不多40分钟。但我得到的值为 41783.333333333。不知道我的错误是什么。
需要一些这方面的指导。