【问题标题】:installing php.5.5 with mcrypt on AWS Linux在 AWS Linux 上使用 mcrypt 安装 php.5.5
【发布时间】:2014-04-19 00:27:39
【问题描述】:
这是一个很简单的问题,但我是一个比系统管理员更好的开发人员。
我在 EC2 上设置了一个 Amazon Linux 实例,但似乎无法获得安装了 mcrypt 的 php 5.5。每次我尝试进行组安装或只是作为 mcrypt 的依赖项时,yum 似乎都会向我抛出 php 5.3。
有什么建议吗?这是针对 Laravel 4.1 应用程序的。
谢谢!
【问题讨论】:
标签:
php
amazon-web-services
laravel-4
【解决方案1】:
由于开始配置 EC2 实例可能会很棘手,而且在我撰写此答案时确实没有太多可用的支持或文档,因此我将发布对我有用的步骤。所以我希望它对其他人有用:
- 按照 AWS 文档中的说明启动 EC2 实例。不要使用弹性 beanstalk 来部署您的 php 应用程序。
- 开始您的 PuTTY 会话,AWS 文档中有详细描述。
-
当 PuTTY 会话开启时,按以下顺序安装:apache server (v 2.4)、php55、php55-mcrypt、php55-pdo 和 mysql55
sudo yum install httpd24
sudo yum install php55
sudo yum install php55-mcrypt
sudo yum install php55-pdo
sudo yum install mysql55
检查您的服务器是否正常工作sudo service httpd start。如果安装成功,您将看到“OK”,并且您应该能够在公共 DNS 中看到示例页面。
-
添加一个组以允许“ec2-user”在 var/www/html 中修改和写入文件
sudo groupadd www
sudo usermod -a -G www ec2-user
退出 PuTTY 并再次重新进入(因此将应用更改)exit
-
重新连接并检查成员身份
groups
-
修改写入和编辑文件的权限
sudo chown -R root:www /var/www
sudo chmod 2775 /var/www
find /var/www -type d -exec sudo chmod 2775 {} +
find /var/www -type f -exec sudo chmod 0664 {} +
-
测试你的服务器
echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php
sudo service httpd restart
访问http://publicdomain/phpinfo.php。如果正常工作(应该),它将显示 php 信息页面。
在处理与 laravel 4.1 不兼容的 php 版本数小时后,所有这些步骤对我来说都很有效>=
【解决方案2】:
如果你使用的是amazon linux,你需要安装以php55开头的php包。
为了兼容性,保留旧包。