当前位置: 首页 > 知识库问答 >
问题:

shell_exec在namescape上托管时不提供输出

莫英卓
2023-03-14

所以我有一个带有shell_exec命令的index.php文件,当我在ubuntu的终端上运行它时,它工作得很好,但是当上传到命名堆托管时,它就不工作了。

http://www.logh.info/这里是网站,是的,我100%确定的路径,以该网站。sh文件是正确的

<html>
<head>
<style>
div {
font family: Ubuntu;
background-color: #F2F2F2;
}
</style>
</head>
<body>
<div>
<h1> <center> Instagram Full Size Profile Picture </center> </h1>
</div>
<center>
<?php 
if(isset($_REQUEST['input'])) {
$name = $_REQUEST['input'];
$output = shell_exec("/home/loghgxli/public_html/instapic.sh $name");
?>
<form action="" method="get">
Enter Instagram Username: <input type="text" name="input">
<input type="submit" value="View">
</form>
<?php
if(isset($output)) {
echo "<img src=$output>";
}
?>
</center>
</body>
#!/bin/bash
NAME=$1
#curl -s https://instagram.com/$NAME/ | grep image | grep fbma | sed 's,s150x150/,,g' | cut -f 4 -d '"'
curl -s https://instagram.com/$NAME/ | grep "og:image" | sed 's,s150x150/,,g' | cut -f 4 -d '"'

共有2个答案

叶光华
2023-03-14

您应该通过以下方式向脚本传递参数

shell_exec("/home/loghgxli/public_html/instapic.sh '".$name."'");

(更多信息在这里:传递变量shell_exec()?)

阎博易
2023-03-14

您可以通过ini\u get('disable\u functions')

 类似资料:
  • 我的问题是,这个“提供商app”是一个什么样的app?是否有任何Android API,该应用程序应该实现,以作为配置提供商?此配套应用程序如何将配置更改挂钩到中,以便托管应用程序能够检索这些更改? 我在这里问这个问题,因为不幸的是,我在Android文档中没有找到任何引用。

  • 我正在尝试实现ESAPI编码以防止在我的spring-mvc项目中进行XSS攻击。我的方法是在发送回响应中的输入之前,我将使用 ESAPI.encoder() 对其进行编码,以便在页面响应中对输入属性进行编码。 我的假设是,当我返回编码的响应时,在我的页面响应中,我将得到编码的字符,而在我的输入字段中,我会得到普通的字符,但我的输入域也设置了编码的字符。 下面是我在发送响应之前在控制器中编写的示例

  • 问题内容: 我只是在Linux服务器上试验PHP 。这是一个非常酷的功能,到目前为止,我真的很喜欢它。有没有办法查看命令运行时正在进行的实时输出? 例如,如果运行时正在ping通目标地址,则每次ping通时,都使用PHP显示结果吗?那可能吗? 我希望看到缓冲区正在运行时进行实时更新。也许不可能,但肯定会很好。 这是我正在尝试的代码,我尝试过的所有方式都始终在命令完成后显示结果。 我尝试过将零件循环

  • 我是否正确理解: > 使用Rancher,您可以自行托管Kubernetes群集,还可以使用aws、google等云提供商。。。同时 如果2.是正确的,是否有可能在自托管库伯内特斯集群和云提供商库伯内特斯集群之间分配负载? 如果自托管集群的资源耗尽,是否也可以优先使用自托管集群,然后使用云提供商集群并使用集群自动缩放器扩展集群?

  • 这个程序应该做什么, 我希望它显示一个空白屏幕,直到我在键盘上点击任何字符。但是它做的事情很奇怪。它显示我按的任何东西。它永远不会终止,直到我按下回车键。 据我所知,getchar()应该只读取一个字符。它不应该输出任何东西。 为什么它打印我输入的每个字符? 编辑: 为什么 getchar() 在读取一个字符后不停止,例如在这段代码中: 程序应在读取一个字符后打印完成。

  • 问题内容: 很抱歉这个新手问题。node.js可以在任何托管提供商(如Fastdomain)中运行吗?我们在fastdomain中有一个帐户,我们在其中上传了用PHP制作的网站。我在主机中允许使用SSH,并尝试安装node.js,但无法正常工作。我一直在搜索互联网,但对此没有确切答案。 问题答案: 不,您不能在每个托管服务提供商上运行Node.js。您需要某些基本功能。如果您的托管服务提供商不像H