标签: php

配置:错误:无法找到 gmp.h

根据/sf/answers/1392598721/我尝试了以下方法无济于事:

  • ln -s /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h
  • --with-gmp=/usr/include/x86_64-linux-gnu

他们都给我这个错误:

configure: error: Unable to locate gmp.h
Run Code Online (Sandbox Code Playgroud)

当我这样做时,ln /usr/include/x86-64-linux-gnu/我看到了这个:

a.out.h  asm  bits  c++  fpu_control.h  gmp.h  gnu  ieee754.h  sys
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

linux php build ubuntu

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

没有扩展名的 Apache 映射文件如何?

我的本地开发设置将http://mydomain.dev/testhtmlpage映射到 testhtmlpage.html 和http://mydomain.dev/testphppage到 testphppage.php。浏览器停留在最初输入的 URL 上。问题是我最初没有配置我的机器,虽然我现在对它有一个很好的处理,但我找不到定义这种行为的地方。

我检查了我的 httpd.conf 和两个包含的区域,但没有运气。

我的 httpd.conf: http : //denishoctor.me/myhttpdconf.xml(查看源代码)

在包含 /private/etc/apache2/other/*.conf 中:

<IfModule php5_module>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>
Run Code Online (Sandbox Code Playgroud)

有人有任何想法吗?

url apache-http-server filesystems rewrite php

9
推荐指数
1
解决办法
6251
查看次数

/usr/bin/env: php: 没有那个文件或目录

我想使用 .sh 脚本来部署我的应用程序。该脚本位于我的主服务器(Ubuntu 15.10 服务器)上,标记为可执行文件。对这个脚本的访问是通过 ssh 完成的,使用教程,我设置了 ssh 登录,它运行该脚本。所以基本上我只是调用ssh deployer@XXX.com someArguments它并使用someArguments作为参数运行我的脚本。用户的deployeruid=0,所以它基本上root(这将在未来改变,我设置它只是为了消除权限问题,直到它正常工作)。

这就是事情变得棘手的地方。脚本报告/usr/bin/env: php: No such file or directoryat 命令/bin/composer install(使用Composer)。我越看那个剧本,事情就越奇怪。在这一行之前,还有一个叫做/bin/composer self-updateand /bin/composer -V,它既能正确运行,又能显示正确的输出。

我检查了以下几件事:

  • /usr/bin/env php -v显示正确的 PHP 版本(与 相同/usr/bin/php -v
  • whereis php 显示 php: /usr/bin/php /usr/local/bin/php /usr/share/man/man1/php.1.gz
  • php5-cli 安装包和最新版本
  • $PATH 包含 /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
  • which env 显示 /usr/bin/env

我也尝试过以下事情:

  • 直接bash deploy.sh在 root 下运行脚本(因为它与该用户相同) - 完美无误
  • 直接运行失败的命令 - …

linux ssh bash php ubuntu

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

用于连接两个 mp3 文件的 ffmpeg 命令

我正在使用 ffmpeg 将两个 MP3 文件连接在一起,

我使用这个命令:

ffmpeg -y -i first.mp3 -i second.mp3 -filter_complex "[0:0][1:0] amix=inputs=2:duration=longest" -c:a libmp3lame output.mp3
Run Code Online (Sandbox Code Playgroud)

可以用,但是有一个小问题,叠加在一起!

我想播放第一首歌曲,当它完成时,第二个文件开始(在输出文件中)

但现在他们同时开始。

我如何更改该命令,使其输出包含第一首歌曲,然后在第一首歌曲完成时播放第二首歌曲?

另外,我试过concat命令但没有用,我只能使用我发送的东西。

audio linux mp3 ffmpeg php

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

尝试从 PEAR 安装 PHPUnit 时出错

$ sudo pear install phpunit/PHPUnit
Unknown remote channel: pear.symfony-project.com
phpunit/PHPUnit requires package "channel://pear.symfony-project.com/YAML" (version >= 1.0.2)
phpunit/PHPUnit can optionally use PHP extension "xdebug" (version >= 2.0.5)
No valid packages found
install failed
Run Code Online (Sandbox Code Playgroud)

我需要做什么才能安装 PHPUnit?

php phpunit pear

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

如果我将受感染网站的副本存储在本地磁盘上是否危险?

首先,我不喜欢 HTML 和 PHP 编程。

一个朋友的 Joomla 网站被某种 html 注入攻击了,现在每个 php 和 html 文件都有一个 iframe,它链接到某种恶意软件页面。现在我想将受感染的文件从服务器复制到我的机器并“清理”它们。这是愚蠢和危险的吗?

html malware php iframe

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

sudo 作为 www-data 用户运行特定命令的权限,无需密码

我有一个网络服务器,也播放网络广播。作为 www-data 用户,我想运行一些命令,例如我在/etc/sudoers文件中做了这个:

www-data        ALL=(ALL) NOPASSWD: /usr/bin/amixer
Run Code Online (Sandbox Code Playgroud)

并形成 PHP 我可以在不使用密码的情况下通过以下方式操作音量:

exec('sudo -u user amixer set Master 3%-');
Run Code Online (Sandbox Code Playgroud)

和:

exec('sudo -u user amixer set Master 3%+');
Run Code Online (Sandbox Code Playgroud)

但是现在我希望能够通过运行命令来重新启动我自己的服务:

exec('sudo -u user service servicename restart');
Run Code Online (Sandbox Code Playgroud)

所以我试过:

www-data        ALL=(ALL) NOPASSWD: /usr/bin/amixer, NOPASSWD: /bin/service
Run Code Online (Sandbox Code Playgroud)

和这个:

www-data        ALL=(ALL) NOPASSWD: /usr/bin/amixer, /bin/service
Run Code Online (Sandbox Code Playgroud)

甚至这个:

www-data        ALL=(ALL) NOPASSWD: /usr/bin/amixer
www-data        ALL=(ALL) NOPASSWD: /bin/service
Run Code Online (Sandbox Code Playgroud)

但他们似乎都没有工作。请帮帮我。


对不起,伙计们 - 我的错误。我做了一些更改,尝试将表单 /sbin 链接到 /bin

现在我已将其更改为:

www-data        ALL=(ALL) NOPASSWD: /usr/bin/amixer, NOPASSWD: /usr/sbin/service
Run Code Online (Sandbox Code Playgroud)

它有效!谢谢!话题关闭。

permissions php sudoers exec

8
推荐指数
1
解决办法
6万
查看次数

Netbeans 自动完成 php 类的方法

我在 Netbeans 7.3 中创建了一个 php 项目。我有一个班级(MYSQL_DB)。当我想在我定义类的文件中访问它的方法时,它向我显示: Netbeans 正在展示方法

请注意,这是在类定义之外(不使用$this)。但是当我想在这个文件之外访问它的方法时,它什么也没显示:

Netbeans 未能显示方法

问:在所有文件中键入类名(如第一张图片)时,有没有办法显示方法?
提前致谢!

php autocomplete netbeans-7.3

8
推荐指数
1
解决办法
5239
查看次数

超级用户的 PHP 版本是 fcgi 而不是 cli

使用 CLI 时,我对 PHP 版本有一个奇怪的问题。当我以 root 身份登录并使用时: php -v我得到一个信息,表明 php 正在 CLI 模式下运行,这很好,但是一旦我使用,sudo php -v我就会得到 php-fcgi 版本,它会阻止我的一些代码。问题是我设置了主管来调用一些 php 进程(Laravel 队列),不幸的是它在 fcgi 模式下被调用,所以一些变量不可用,因此我的代码中断。有什么解决方法吗?我正在使用 CentOS 6.5。

linux command-line php

7
推荐指数
1
解决办法
114
查看次数

如何查找并终止 php 循环(进程)?

我有一个我一直在开发的 php 脚本,它在循环中调用外部 api。它正在 Debian 上运行 LAMP 的 VPS 上进行测试。我今天早上注意到 api 没有响应我的脚本。当我打电话给供应商时,他们告诉我我的服务器在过去 10 个小时里每小时调用 api 1000 次。我假设一个 php 脚本(我前一天一直在工作并在我的 VPS 上测试)在其中一次执行过程中进入了一个无限循环,并且从未出现过(我一直在命令提示符下对其进行测试,并且不是通过网络。)我试图停止和启动 Apache,但 api 支持人员说呼叫仍然来自我的服务器地址。我怎样才能找到并停止这个过程?另外,Apache停止/启动是否有可能解决问题,

请原谅我没有正确使用我的本地测试环境。

编辑:我不知道进程名称,我需要根据行为发现名称(或 pid)。

apache-http-server command-line process php api

7
推荐指数
1
解决办法
6万
查看次数