所以我最近更改为ubuntu,我正在尝试再次设置我的环境,并设法安装LAMP和phpmyadmin以及phpstorm。
但我能做的就是在我尝试运行程序时从phpStorm运行php脚本页面给我一个" 502 Bad gateway"错误,当我回到phpStorm时,它告诉我没有找到php-cgi。
我已尝试解决问题,但无法找到任何可靠的答案,我现在很困惑
我也成功添加了php解释器和xDebug
答案 0 :(得分:54)
on linux ubuntu
对于PHP5:sudo apt-get install php5-cgi
对于PHP7:sudo apt-get install php7.0-cgi
答案 1 :(得分:4)
我遇到了同样的问题。用一个小shell脚本替换/ usr / bin / php5-cgi之后我发现了错误
主持人' localhost'有多个地址。你必须选择一个 明确!无法在端口上创建FastCGI侦听套接字 本地主机:56468
在/ etc / hosts中评论
在评论IPv6主机后,问题似乎已经解决:127.0.0.1 localhost
之后,问题似乎已经解决了。
# The following lines are desirable for IPv6 capable hosts
# ::1 localhost ip6-localhost ip6-loopback
# ff02::1 ip6-allnodes
# ff02::2 ip6-allrouters
答案 2 :(得分:2)
如果还没有安装,请安装Homebrew:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
现在,我们已经在Homebrew中,通过在终端上输入此信息来点击php存储库:
brew tap josegonzalez/php
brew tap homebrew/dupes
检查PHP 5.4可用的选项:
brew options php54
现在使用一些选项安装/构建PHP 5.4(在您的情况下使用CGI的PHP-FPM):
brew install php54 --with-fpm --with-debug --with-cgi --with-libmysql --with-homebrew-curl
brew install fastcgi
注意:如果你不打算使用Apache add --without-apache,如果你需要其他东西,只需检查选项并添加你需要的东西
现在,通过在终端中输入以下内容来检查PHP-FPM是否已启用:
php-fpm -v
如果你得到这个:
PHP 5.4.24(fpm-fcgi)版权所有(c)
1997-2013 PHP Group Zend Engine v2.4.0,版权所有(c)1998-2013
Zend Technologies
你刚刚像老板一样用FCGI安装了PHP ..
答案 3 :(得分:2)
for mac:
安装XAMPP(它的简单直接forvard)它附带了apache和php解释器
- > php - >解释器选择路径/ Applications / XAMPP / bin / php
设置中的phpstorm - > build,... - >部署添加到位服务器,url root localhost
可以在jetbrains网页上找到更多信息
这帮助我解决了这个问题并通过点击phpstorm中的web浏览器图标来运行php。
并且不要忘记在xampp中打开apache - >管理服务器!)
答案 4 :(得分:1)
基本上谁是页面说要做到这一点。
从php.net下载解释器的东西哦。
make install
创建一个名为newpath.txt的文件并添加到其中
PATH=~/custom/php5/bin:$PATH
export PATH
输入cat newpath.txt>>的.profile
我会制作一个YouTube视频并上传。
答案 5 :(得分:0)
在phpStorm的“PHP-CGI Server”选项卡中,您会看到错误:
/usr/bin/php-cgi -e -b localhost:52109
Host 'localhost' has multiple addresses. You must choose one explicitly!
Couldn't create FastCGI listen socket on port localhost:52109
PHP-CGI Server terminated
似乎没有任何解决这个已知错误的方法:https://youtrack.jetbrains.com/issue/WI-24373 在/ etc / hosts(在Linux上)中注释掉localhost的IPv4或IPv6地址是一种解决方法。
答案 6 :(得分:0)
我也有这个问题。它取决于您要在PhpStorm中将其用作解释器的php版本。
此错误消息表明PhpStorm需要CGI二进制文件才能执行您的代码。
我正在使用Ubuntu 18.04,而我使用的PHP版本是7.2。
您需要根据应用程序要求安装模块。因此,您可以使用以下命令在软件包存储库中搜索可用的PHP 7模块:
sudo apt-cache search php7*
现在,您可以在存储库中看到所有可用的模块(也适用于cgi)。现在,您必须按照以下命令在系统上安装所需的PHP模块。通过使用软件包名称指定版本,以确保安装了正确PHP版本的软件包。在不定义软件包版本的情况下,它将安装最新的软件包。例如。对我来说,我需要php7.2-cgi:
sudo apt install php7.2-cgi
现在已安装cgi。您必须重新启动PhpStorm并再次进行测试。这对我来说很有用。
答案 7 :(得分:0)
我之前也遇到过同样的问题,但是第一步是为当前版本安装正确的PHP版本,然后在启动IDE之前,请确保已安装php7.x-cgi
版本
打开终端并输入
sudo apt update && sudo apt install php7.x-cgi
用版本号替换x
,然后需要配置IDE以查找PHP安装目录的路径