• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

linux – crontab中执行的php文件中遇到重定向会如何?

php 搞代码 4年前 (2022-01-25) 25次浏览 已收录 0个评论
文章目录[隐藏]

有index.php文件,其中包含代码:

<code>header("Location: /from_index.php"); # 重定向(from_index.php的文件位置在:/www/)</code>

使用crontab -e加入定时任务:

<code>*/5 9-23 * * * sleep 50 && php /www/index.php # php脚本的绝对路径</code>

请问这样的结构中,会执行from_index.php中的代码吗?

我了解到如果写成:

<code>*/5 9-23 * * * sleep 50 && curl -L -e '; auto' http://127.0.0.1/index.php # http访问</code>

是能够执行到from_index.php中的代码的。但是这样的写法是否没有使用php命令效率高?

!本文来源gaodai.ma#com搞#代!码(网

搞gaodaima代码

回复内容:

有index.php文件,其中包含代码:

<code>header("Location: /from_index.php"); # 重定向(from_index.php的文件位置在:/www/)</code>

使用crontab -e加入定时任务:

<code>*/5 9-23 * * * sleep 50 && php /www/index.php # php脚本的绝对路径</code>

请问这样的结构中,会执行from_index.php中的代码吗?

我了解到如果写成:

<code>*/5 9-23 * * * sleep 50 && curl -L -e '; auto' http://127.0.0.1/index.php # http访问</code>

是能够执行到from_index.php中的代码的。但是这样的写法是否没有使用php命令效率高?

php的执行
1.cli方式,直接用php脚本执行

<code>php  index.php</code>

2.经过服务器请求cgi方式

<code>curl -L http://127.0.0.1/index.php</code>

header函数跳转,是服务器响应给curl(相当于浏览器)做重定向,然后重新请求服务器
因此php /www/index.php,header函数是不会起作用的进行跳转到index.php脚本文件,因为没有经过服务器。

<code>//index.phpheader("Location:demo.php");</code>
<code>//demo.phpecho "this is demo";</code>

请求结果图

服务器接收到的请求图

如果使用curl的话你需要打开它的重定向开关

curl 不可以使用 header

直接再在代码里面用 system 调用php命令执行那个php文件 不可以这样?

第一个问题,不会,
第二个,不会有直接执行cli的性能高


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:linux – crontab中执行的php文件中遇到重定向会如何?

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址