我正在尝试在生产 VPS 上安装 nginx、PHP5 和 MySQL。我之所以选择 nginx 而不是 Apache,是因为 VPS 的规格不高。
nginx 已安装,并能成功提供静态页面。现在我尝试安装 PHP5,但遇到了麻烦。
遵循本指南: http://www.zalas.eu/setting-up-a-php-development-environment-with-nginx-on-ubuntu-1104
它说运行这个命令来安装 PHP5:
sudo apt-get install php5-fpm php5-cli php5-common php5-curl php5-gd \
php5-mcrypt php5-mysql php5-pgsql php5-sqlite php5-tidy php5-xmlrpc \
php5-xsl php5-intl php5-imagick php5-xdebug php-apc php-pear
当我这样做时,我得到了这个输出:
root@lvps92-60-122-235:/tmp# sudo apt-get install php5-fpm php5-cli php5-common php5-curl php5-gd \
> php5-mcrypt php5-mysql php5-pgsql php5-sqlite php5-tidy php5-xmlrpc \
> php5-xsl php5-intl php5-imagick php5-xdebug php-apc php-pear
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Couldn't find package php5-fpm
我已经尝试运行sudo apt-get update
,但仍然失败。在 Google 上搜索了这个问题后,通常可以解决我遇到的所有问题,但似乎没有万无一失的解决方案 :/
有人曾经这样做过并且知道如何让 PHP5 与 nginx 正常工作吗?
答案1
首先,对于 Ubuntu,您几乎应该总是使用长期支持版本,因此是 10.04。
原因如下 -https://wiki.ubuntu.com/LTS-看一下图表。
(因此,如果您能等到 4 月底推出的 12.04 LTS,那就太好了。)
否则,Nginx 的 PHP repo - ppa:nginx/php5 - 不再维护。
您可以使用 Mercer 的 repo,但是他自己说不要这样做(我刚刚相应地更新了 vpsbible 的 stackscripts,因此知道了方法),因为它没有得到维护。
相反...使用 ppa:l-mierzwa/lucid-php5 repo 和 10.04 你就没问题了。
add-apt-repository ppa:l-mierzwa/lucid-php5
apt-get update
(如果您想尝试的话,11.04 可能也没什么问题。)
这为您提供了 PHP 5.3.10。如果您想使用 5.4.0(除非您是错误测试人员,否则不建议使用),那么这个...
add-apt-repository ppa:ondrej/php5
答案2
PHP-FPM 软件包仅包含在 Ubuntu 10.10 (Maverick) 及更高版本中。如果您运行的是早期版本的 Ubuntu,则不会在官方存储库中找到它。
如果您不想升级(或无法升级),您可以添加另一个为您的发行版提供 php5-fpm 的存储库。
一些受欢迎的选择包括:
这nginx/php5 存储库(看这个答案了解详情)
sudo aptitude install python-software-properties
sudo add-apt-repository ppa:nginx/php5
或者Brian Mercer 存储库(不再更新!)(按照这篇 HowToForge 文章)。
sudo aptitude install python-software-properties
sudo add-apt-repository ppa:brianmercer/php
我更喜欢第一个,但也许这只是个人喜好。
添加存储库后:
sudo apt-get update && sudo apt-get install php5-fpm
使用非官方存储库时,要格外小心,以免遇到任何冲突。