如何在 ubuntu 11.04 上安装 PHP 编译器/解释器
我有最新版本的 PHP,但我想从终端学习 PHP。是否有可用的 PHP 解释器可以在终端内运行 PHP 程序。
例如,我想运行像“phpc”或“phpi”或“php”这样的命令来打开 PHP REPL。
谢谢。
我想更改 upload_max_filesize = 2M为50M,然后我开始在 php.ini 上进行编辑,但是当尝试保存它时,它显示下面的错误消息
保存 /etc/php5/apache2/php.ini 时无法创建备份文件
在保存新文件之前,gedit 无法备份文件的旧副本。您可以忽略此警告并保存文件,但如果保存时发生错误,您可能会丢失文件的旧副本。还是要保存?

我刚刚安装了 appache、MySQL 和 PHP,在安装过程中,系统提示我输入 MySQL root 用户密码,但是当我启动 MySQL 时,它弹出错误,我似乎无法找到解决方法,大多数我读过的解决方案并没有解决它,而且,我发现 /var/run/mysqld 路径甚至不存在,我的 php 还需要套接字连接到我的数据库。
升级到 Ubuntu 14.04 后,php-pear 无法安装任何软件包。
sudo pear install --alldeps --force pear.phpunit.de/PHPUnit
downloading PHPUnit-4.0.17.tgz ...
Starting to download PHPUnit-4.0.17.tgz (509,430 bytes)
......................................................................................................done: 509,430 bytes
could not extract the package.xml file from "/build/buildd/php5-5.5.9+dfsg/pear-build-download/PHPUnit-4.0.17.tgz"
Download of "phpunit/PHPUnit" succeeded, but it is not a valid package archive
Error: cannot download "phpunit/PHPUnit"
Download failed
install failed
The packages are being downloaded but can't extract.
Run Code Online (Sandbox Code Playgroud)
我试过这个解决方案,http://cweiske.de/tagebuch/pear-php-5.5.htm 但仍然遇到同样的问题。
有人遇到过这种情况么?我需要降级到 php5.4 吗?如果是这样,如何?
更新:感谢您的快速回复。Karels 的回答解决了我的问题。只是为了完整性,通过梨安装的正确方法不再有效。从 phar 文件安装的步骤记录在:http ://phpunit.de/getting-started.html
也不再需要包含/要求 PHPunit/Runner.php 和 Autoload 等。
再次。谢谢您的帮助
我正在运行 12.04 LTS ubuntu 服务器。而且我认为如果可以在更新可用时通知我会很好。但是我不知道怎么知道...
我试过查看apt-get手册页。从它我能够使用apt-get -s upgrade在脚本中获取 apt-get 输出而不会阻止问题。
现在,我清楚地看到了差异:
更新可用:
apt-get -s upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be upgraded:
dpkg dpkg-dev libdpkg-perl
3 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Inst dpkg [1.16.1.2ubuntu7.2] (1.16.1.2ubuntu7.3 Ubuntu:12.04/precise-updates [amd64])
Conf dpkg (1.16.1.2ubuntu7.3 Ubuntu:12.04/precise-updates [amd64])
Inst dpkg-dev [1.16.1.2ubuntu7.2] (1.16.1.2ubuntu7.3 Ubuntu:12.04/precise-updates [all]) []
Inst libdpkg-perl [1.16.1.2ubuntu7.2] (1.16.1.2ubuntu7.3 Ubuntu:12.04/precise-updates [all])
Conf libdpkg-perl (1.16.1.2ubuntu7.3 Ubuntu:12.04/precise-updates [all]) …Run Code Online (Sandbox Code Playgroud) 我知道这是一个受欢迎的问题,但我还没有发现任何人有类似的问题。只要 .php 扩展名不在 url 中,我就可以提供 PHP 文件。例如:
如果我去,我会得到localhost我的 index.php 文件。如果我去localhost/index.php我下载文件。这是我的配置:
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /usr/share/nginx/html;
index index.php index.html index.htm;
# Make site accessible from http://localhost/
server_name localhost;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
# Uncomment to enable naxsi on this location
# include /etc/nginx/naxsi.rules
}
# Only for nginx-naxsi used …Run Code Online (Sandbox Code Playgroud) 我似乎无法让 Apache 2.4 加载我的xdebug配置。我已经添加:
zend_extension=xdebug.so
remote_enable=on
Run Code Online (Sandbox Code Playgroud)
到/etc/php5/apache2/conf.d/20-xdebug.ini。
根据phpinfo()该文件确实被解析,但remote_enable仍然关闭。
我在日志中没有看到任何错误。我还可能缺少什么?
我是类 Unix 系统的新手,现在使用 Ubuntu。尝试使用以下命令安装 Composer 时遇到问题:
(sudo) curl -sS https://getcomposer.org/installer | (sudo) php mv composer.phar /usr/local/bin/composer
Run Code Online (Sandbox Code Playgroud)
*试过有无 sudo
在此之后,我得到了一些关于证书的信息,没有别的:
Certinomis - Root CA
====================
-----BEGIN CERTIFICATE-----
MIIFkjCCA3qgAwIBAgIBATANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJGUjETMBEGA1UEChMK
Q2VydGlub21pczEXMBUGA1UECxMOMDAwMiA0MzM5OTg5MDMxHTAbBgNVBAMTFENlcnRpbm9taXMg
LSBSb290IENBMB4XDTEzMTAyMTA5MTcxOFoXDTMzMTAyMTA5MTcxOFowWjELMAkGA1UEBhMCRlIx
EzARBgNVBAoTCkNlcnRpbm9taXMxFzAVBgNVBAsTDjAwMDIgNDMzOTk4OTAzMR0wGwYDVQQDExRD
ZXJ0aW5vbWlzIC0gUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANTMCQos
P5L2fxSeC5yaah1AMGT9qt8OHgZbn1CF6s2Nq0Nn3rD6foCWnoR4kkjW4znuzuRZWJflLieY6pOo
d5tK8O90gC3rMB+12ceAnGInkYjwSond3IjmFPnVAy//ldu9n+ws+hQVWZUKxkd8aRi5pwP5ynap
z8dvtF4F/u7BUrJ1Mofs7SlmO/NKFoL21prbcpjp3vDFTKWrteoB4owuZH9kb/2jJZOLyKIOSY00
8B/sWEUuNKqEUL3nskoTuLAPrjhdsKkb5nPJWqHZZkCqqU2mNAKthH6yI8H7KsZn9DS2sJVqM09x
RLWtwHkziOC/7aOgFLScCbAK42C++PhmiM1b8XcF4LVzbsF9Ri6OSyemzTUK/eVNfaoqoynHWmgE
6OXWk6RiwsXm9E/G+Z8ajYJJGYrKWUM66A0ywfRMEwNvbqY/kXPLynNvEiCL7sCCeN5LLsJJwx3t
FvYk9CcbXFcx3FXuqB5vbKziRcxXV4p1VxngtViZSTYxPDMBbRZKzbgqg4SGm/lg0h9tkQPTYKbV
PZrdd5A9NaSfD171UkRpucC63M9933zZxKyGIjK8e2uR73r4F2iw4lNVYC2vPsKD2NkJK/DAZNuH
i5HMkesE/Xa0lZrmFAYb1TQdvtj/dBxThZngWVJKYe2InmtJiUZ+IFrZ50rlau7SZRFDAgMBAAGj
YzBhMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTvkUz1pcMw6C8I
6tNxIqSSaHh02TAfBgNVHSMEGDAWgBTvkUz1pcMw6C8I6tNxIqSSaHh02TANBgkqhkiG9w0BAQsF
AAOCAgEAfj1U2iJdGlg+O1QnurrMyOMaauo++RLrVl89UM7g6kgmJs95Vn6RHJk/0KGRHCwPT5iV
WVO90CLYiF2cN/z7ZMF4jIuaYAnq1fohX9B0ZedQxb8uuQsLrbWwF6YSjNRieOpWauwK0kDDPAUw
Pk2Ut59KA9N9J0u2/kTO+hkzGm2kQtHdzMjI1xZSg081lLMSVX3l4kLr5JyTCcBMWwerx20RoFAX
lCOotQqSD7J6wWAsOMwaplv/8gzjqh8c3LigkyfeY+N/IZ865Z764BNqdeuWXGKRlI5nU7aJ+BIJ
y29SWwNyhlCVCNSNh4YVH5Uk2KRvms6knZtt0rJ2BobGVgjF6wnaNsIbW0G+YSrjcOa4pvi2WsS9
Iff/ql+hbHY5ZtbqTFXhADObE5hjyW/QASAJN1LnDE8+zbz1X5YnpyACleAu6AdBBR8Vbtaw5Bng
DwKTACdyxYvRVB9dSsNAl35VpnzBMwQUAR1JIGkLGZOdblgi90AMRgwjY/M50n92Uaf0yKHxDHYi
I0ZSKS3io0EHVmmY0gUJvGnHWmHNj4FgFU2A3ZDifcRQ8ow7bkrHxuaAKzyBvBGAFhAn1/DNP3nM
cyrDflOR1m749fPH0FFNjkulW+YZFzvWgQncItzujrnEj1PhZ7szuIgVRs/taTX/dQ1G885x4cVr
hkIGuUE=
-----END CERTIFICATE-----
CACERT;
}
}
Run Code Online (Sandbox Code Playgroud)
(这只是一个重要信息的一部分)
有什么建议吗?提前致谢
当我去时,localhost/phpmyadmin我收到 apache“未找到”错误(404)。但是,我可以加载 html 页面,并运行 php 页面(例如<?php phpinfo(); ?>)。并phpmyadmin已安装。
balter@homedevbox:~$ aptitude search phpmyadmin
i phpmyadmin - MySQL web administration tool
Run Code Online (Sandbox Code Playgroud)
我还安装了标准的 ubuntu LAMP 堆栈并为 mysql 和所有这些设置了密码。
可能是什么问题呢?
编辑:
这是我的phpmyadmin文件所在的位置。
balter@homedevbox:/var$ cd /
balter@homedevbox:/$ sudo find . -type d -name phpmyadmin
./var/lib/mysql/phpmyadmin
./var/lib/phpmyadmin
./etc/phpmyadmin
./usr/share/phpmyadmin
./usr/share/dbconfig-common/scripts/phpmyadmin
./usr/share/dbconfig-common/data/phpmyadmin
./usr/share/doc/phpmyadmin
Run Code Online (Sandbox Code Playgroud) 设置 Ubuntu 16.04 虚拟主机时,Apache 将使用 PHP 7.0.22-2+ubuntu16.04.1+deb.sury.org+4。
但是,在尝试通过执行apt-get dist-upgrade(并且失败)来解决一些冲突之后,我最终得到了一个严重损坏的系统。我已经设法将大多数软件包版本回滚到默认版本,但 Apache 使用
PHP 7.1.8-2+ubuntu16.04.1+deb.sury.org+4,这与我需要的一些 PHP 库不兼容。
到目前为止,我已经尝试过:
sudo a2dismod php7.1
sudo a2enmod php7.0
sudo service apache2 restart
Run Code Online (Sandbox Code Playgroud)
但是,这会破坏 Apache 并拒绝重新启动:
Syntax error on line 140 of /etc/apache2/apache2.conf: Syntax error on line 3 of /etc/apache2/mods-enabled/php7.0.load: Cannot load /usr/lib/apache2/modules/libphp7.0.so
Run Code Online (Sandbox Code Playgroud)
如何让 Apache 再次运行默认的 PHP 版本 (PHP 7.0)?
编辑:Dan下面对我的 [现已编辑] 自我回答的评论 让我意识到添加以下第三方 PPAppa:ondrej/php可能与问题有关。
所以:
我已将 PPA 添加ppa:ondrej/php到我的网站。