我想在我的专用服务器上安装 WHMCS。(我已经安装了 apache2)由于 WHMCS 不支持 PhP 5.5,我该如何安装 PhP 5.4?
WHMCS 系统要求:http://docs.whmcs.com/System_Requirements
我使用 ubuntu 14.04 和 apache2
答案1
你可以试试https://github.com/CHH/phpenv
还有另一个版本管理器https://github.com/wilmoore/php-version,但我会尝试 phpenv,因为我正在使用 rbenv 并且它运行良好。
答案2
解决您遇到的问题的方法有很多种,您可以尝试以下方法:
方法 1::全新安装
sudo apt-get update
sudo apt-get upgrade
sudo apt-get remove --purge `dpkg -l | grep php | grep -w 5.5 | awk '{print $2}' | xargs`
sudo apt-get purge apache2 php5 libapache2-mod-php5
sudo sed -i.bak "s/trusty/precise/g" /etc/apt/sources.list
sudo apt-get update
sudo apt-get install apache2 apache2-suexec libapache2-mod-fcgid php5-cgi
sudo apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-xdebug
sudo sed -i "s/precise/trusty/g" /etc/apt/sources.list
dpkg --get-selections | egrep '^(apache|php)' | sed 's/install/hold/g' | sudo dpkg --set-selections
sudo apt-get update
sudo apt-get install mysql-client mysql-server phpmyadmin
这将安装以下软件包:
Apache fcgid PHP 5.4 MySQL PHPMyAdmin 和一些其他软件(包括流行的 PHP 扩展)
方法 2:: 多个 PHP 版本
此方法假设您已在服务器上安装了 Git(和 Nano)
1)安装依赖项(如果还没有安装):
sudo apt-get install build-essential git apache2-mpm-worker libapache2-mod-fastcgi php5-fpm
2)安装PHP依赖项:
sudo apt-get build-dep php5
3)下载PHP Farm:
sudo git clone https://github.com/cweiske/phpfarm.git /opt/phpfarm
4)导航目录:
cd /opt/phpfarm/src
5)编译 PHP 版本(您选择的版本):]
所有版本的完整列表可在此处查看:http://museum.php.net
笔记!完成后安装位置为 /opt/phpfarm/inst/bin。
PHP 5.4:sudo ./compile.sh 5.4.0
PHP 5.5:sudo ./compile.sh 5.5.0
PHP 5.6:sudo ./compile.sh 5.5.6
6)启用FAST-CGI
sudo a2enmod actions fastcgi alias
7)重新启动Apache
sudo service apache2 restart
8)创建FastCGIServer配置
sudo nano /etc/apache2/conf.d/php-cgisetup.conf
9)编辑FastCGIServer配置
您需要为使用 PHPFarm 创建的每个 PHP 版本设置一行,使用 (CTRL+O) 保存,使用 (CTRL+X) 关闭。
#php-cgi setup
#used for multiple php versions
FastCgiServer /var/www/cgi-bin/php-cgi-5.4.0
FastCgiServer /var/www/cgi-bin/php-cgi-5.5.0
FastCgiServer /var/www/cgi-bin/php-cgi-5.5.6
ScriptAlias /cgi-bin-php/ /var/www/cgi-bin/
10)创建CGI-BIN
sudo mkdir /var/www/cgi-bin
11)创建 PHP-CGI 文件(针对特定 PHP 版本)
例如(针对 PHP 5.4):
sudo nano /var/www/cgi-bin/php-cgi-5.4.0
12)编辑 PHP-CGI 文件
#!/bin/sh
PHP_FCGI_CHILDREN=3
export PHP_FCGI_CHILDREN
PHP_FCGI_MAX_REQUESTS=5000
export PHP_FCGI_MAX_REQUESTS
exec /opt/phpfarm/inst/bin/php-cgi-5.4.0
笔记:如果您希望编译其他版本的 PHP,则只需将步骤 11 和 12 中的“php-cgi-5.4.0”替换为 php-cgi-XXX”,其中 XXX 代表您之后的 PHP 版本
13)设置 CGI-BIN 所有者
sudo chown -R www-data:www-data /var/www/cgi-bin
14)设置 CGI-BIN 权限
sudo chmod -R 0744 /var/www/cgi-bin
15)导航至目录
cd /etc/apache2/sites-available
16)创建虚拟主机
sudo nano php-dev
17)编辑虚拟主机
<VirtualHost *:80>
ServerName **PHP 5.4 HOSTNAME GOES HERE**
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride All
AddHandler php-cgi .php
Action php-cgi /cgi-bin-php/php-cgi-5.4.0
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
</VirtualHost>
<VirtualHost *:80>
ServerName **PHP 5.5 HOSTNAME GOES HERE**
DocumentRoot /var/www
<Directory />virtual host
Options FollowSymLinks
AllowOverride All
AddHandler php-cgi .php
Action php-cgi /cgi-bin-php/php-cgi-5.5.0
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
</VirtualHost>
<VirtualHost *:80>
ServerName **PHP 5.6 HOSTNAME GOES HERE**
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride All
AddHandler php-cgi .php
Action php-cgi /cgi-bin-php/php-cgi-5.5.6
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
</VirtualHost>
您必须根据您的需要进行此项配置。
18)禁用默认网站
sudo a2dissite default
19)启用新网站
sudo a2ensite php-dev
20)导航至 WWW 目录
cd /var/www
21)重新加载Apache
sudo service apache2 reload
22)删除旧索引
rm index.html
23)创建测试 PHP 页面
sudo nano index.php
24)编辑我们制作的测试页
<?php
phpinfo();
?>
25)获取您的服务器 IP 地址
如果您不知道如何操作,请使用以下命令:
ifconfig
26)打开 /etc/hosts 文件
sudo nano /etc/hosts
27)编辑Hosts文件
127.0.0.1 YOURWEBSITEURLFORPHP54.COM
127.0.0.1 YOURWEBSITEURLFORPHP55.COM
127.0.0.1 YOURWEBSITEURLFORPHP56.COM
就是这样,您现在可以保存它,并在需要时重新加载/重新启动 Apache,并测试运行在不同 php 版本上的新网站!