标签: lamp

亚马逊EC2作为Web服务器?

我最近想到了很多可用的托管类型.我们可以从欧洲的EC2实例(我们位于瑞典)获得相当不错的延迟(平均),而且成本相当不错.显然,对于我们来说,扩大和缩小实例的可能性对我们来说是惊人的,现在正处于一个非常广阔的阶段.

从逻辑角度来看,我也相信亚马逊可能比市场上的大多数托管公司提供更好的可用性和稳定性.当我们想知道任何事情并强迫我们自己谷歌时,它也可能超过拨打电话号码的需要:)

那么,如果我们要在EC2上运行我们的Web服务器,我们应该关注什么?优缺点都有什么?

为了澄清,我们将运行一个非常标准的LAMP配置,可能会添加memcached.

谢谢

lamp amazon-ec2 amazon-web-services

63
推荐指数
5
解决办法
5万
查看次数

PHP错误未在浏览器中显示[Ubuntu 10.10]

我是PHP和整个LAMP堆栈的新手,但我已经设法在我的Ubuntu 10.10系统上运行它.一切似乎都在工作,除了在浏览器中的错误重新发布,我似乎无法工作(我不能没有!).

我已经阅读了一些文章和其他线程,表明应该在文件中应用以下值/etc/php5/apache2/php.ini:

  • display_errors = On
  • display_startup_errors = On

我重新启动了apache2,甚至重新启动了我的计算机,但对于我的生活,我无法让它工作.我甚至尝试使用phpinfo()功能,报告这些设置是我设置它们所以我知道它正在拿起正确的配置文件,但没有!

欢迎任何帮助.

php apache lamp apache2 ubuntu-10.10

58
推荐指数
6
解决办法
10万
查看次数

Docker:如何Dockerize和部署LAMP应用程序的多个实例

我需要部署同一个LAMP(或LEMP)应用程序的许多实例:

  • 每个实例都可以通过前置loadbalancer/proxy从子域访问
  • 每个实例都必须有自己的db数据和文件数据.
  • 每个实例都可能受到监控
  • 每个应用程序实例可能设置内存限制/ CPU
  • 易于自动部署新的webapp实例
  • 环境可能很容易重现,可用于测试和开发.

申请要求:

  • dameon过程(Nginx,MariaDB,PHPFPM)
  • 二进制文件(composer,bower,...)
  • 其他系统特定的库和配置

在阅读了Docker文档和许多howtos之后,我看到了对这个Web应用程序进行docker化的不同解决方案:


解决方案1:使用一体化容器

所有堆栈都在一个容器中:

  • webapp源文件,EMP守护程序进程,二进制文件,...
  • 已安装的卷mysql和webapp数据文件

例子 :

优点(恕我直言):

  • 似乎很容易实现自动化,监控,摧毁.......
  • 易于在prod,test和dev环境中使用.

缺点(恕我直言):

  • 单片
  • 难以扩展
  • 不使用Docker的所有优势

解决方案2:每个webapp实例使用容器堆栈

对于要部署的每个webapp,部署了一个容器堆栈:

  • 每个进程的一个容器:Nginx,Mysql,PHP-FPM,
  • 二进制容器(composer,, bower...)也可以进行docker化,或者在phpfpm容器中合并
  • 装载mysql和webapp数据文件的卷

例子 :

(恕我直言):

  • 解耦
  • 每个实例隔离的进程
  • 每个容器一个进程,不需要守护程序管理器作为RUnit或Supervisord

缺点(恕我直言): …

lamp web-applications web-deployment docker

50
推荐指数
2
解决办法
2万
查看次数

LAMP:如何为用户动态创建.Zip大型文件,无需磁盘/ CPU抖动

通常,Web服务需要压缩几个大文件以供客户端下载.最明显的方法是创建一个临时zip文件,然后将echo其创建给用户或将其保存到磁盘并重定向(将来某个时间删除它).

但是,这样做有缺点:

  • 密集的CPU和磁盘颠簸的初始阶段,导致......
  • 准备好存档时,用户会有相当大的初始延迟
  • 每个请求的内存占用非常高
  • 使用大量临时磁盘空间
  • 如果用户取消下载中途,初始阶段(CPU,内存,磁盘)中使用的所有资源都将被浪费

ZipStream-PHP这样的解决方案通过将数据按文件铲入Apache文件来改进这一点.但是,结果仍然是高内存使用率(文件完全加载到内存中),以及磁盘和CPU使用率的大幅飙升.

相反,请考虑以下bash片段:

ls -1 | zip -@ - | cat > file.zip
  # Note -@ is not supported on MacOS
Run Code Online (Sandbox Code Playgroud)

这里,zip以流模式运行,导致内存占用量低.管道具有整数缓冲区 - 当缓冲区已满时,OS会暂停写入程序(管道左侧的程序).这样可确保zip其输出速度与输出速度一样快cat.

然后,最佳方式是执行相同的操作:cat使用Web服务器进程替换,将zip文件流式传输给用户,并将其动态创建.与仅流式传输文件相比,这将产生很少的开销,并且将具有无问题的,非尖峰的资源配置文件.

如何在LAMP堆栈上实现这一目标?

php bash lamp zip pipe

43
推荐指数
1
解决办法
3万
查看次数

如何在CentOS上启用SOAP

我们有CentOS的VPS我用以下命令安装了soap.

yum install php-soap
Run Code Online (Sandbox Code Playgroud)

然后我去php.ini取消评论soap扩展.它不存在,我添加了自己的以下行.

extension=soap.so
Run Code Online (Sandbox Code Playgroud)

然后我用以下命令重启服务器

service httpd restart
Run Code Online (Sandbox Code Playgroud)

但SOAP仍未启用.因为我得到致命错误:类'SoapClient'如果我尝试再次安装它.我得到以下信息.

Package php-soap-5.3.3-27.el6_5.x86_64 already installed and latest version
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下命令重新配置PHP.

php-config '--disable-fileinfo' '--disable-pdo' '--enable-bcmath' '--enable-calendar' '--enable-ftp' '--enable-libxml' '--enable-sockets' '--prefix=/usr/local' '--with-apxs2=/usr/local/apache/bin/apxs' '--with-curl=/opt/curlssl/' '--with-imap=/opt/php_with_imap_client/' '--with-imap-ssl=/usr' '--with-kerberos' '--with-libdir=lib64' '--with-libxml-dir=/opt/xml2/' '--with-mysql=/usr' '--with-mysql-sock=/var/lib/mysql/mysql.sock' '--with-openssl=/usr' '--with-openssl-dir=/usr' '--with-pcre-regex=/opt/pcre' '--with-pic' '--with-zlib' '--with-zlib-dir=/usr' '--enable-soap'
Run Code Online (Sandbox Code Playgroud)

有帮助吗?

php lamp soap centos

35
推荐指数
4
解决办法
12万
查看次数

Windows-1252(1/3/4)和ISO-8859-1之间的确切区别是什么?

我们在基于Debian的LAMP安装上托管PHP应用程序.一切都很好 - 性能,管理和管理明智.然而,作为一个有点新的开发者(我们仍然在高中),我们遇到了一些西方字符集的字符编码问题.

经过大量的研究,我得出结论,网上的信息有点令人困惑.它说的是Windows-1252是ANSI并且完全兼容ISO-8859-1.

那么,无论如何,Windows-1252(1/3/4)和ISO-8859-1之间有什么区别?ANSI无论如何都会进入这个领域?

我们应该在Debian服务器(和工作站)上使用什么编码,以确保客户以预期的方式获取所有信息,并且我们不会丢失任何字符?

lamp encoding character-encoding php-5.4

33
推荐指数
4
解决办法
3万
查看次数

如何使用SSL为本地开发创建证书?

我目前正在使用LAMP堆栈在webproject上进行本地开发.由于我的生产应用程序将使用https进行登录,因此我希望能够在我的本地开发环境中模仿这一点,以便所有URL保持一致.我是ssl证书的新手,所以有人可以请我指点如何做到这一点吗?我需要签署自己的证书吗?我在哪里放置证书(我使用apache进行虚拟主机配置)?谢谢.

apache ssl lamp

31
推荐指数
1
解决办法
4万
查看次数

PHP代码组织

我们刚为新系统安装了新服务器,我想知道应该做些什么来使我的新代码尽可能高效,以及如何组织它.

我想要一个很好的解决方案,所以我不需要在一年后重新组织它(例如),我想要最好的实践和技术,以确保我的代码能够存活足够长的时间,以避免以后重新使用它.这里没有框架使用

这是我的新环境:

  • 8个网络服务器LAMP(apache2,php 5.3.5,cent os 5) - (xeon E5645,32g ram,raid 10 1T 15k) - 1个负载均衡器来管理它们
  • 带有复制的12个数据库mysql 5.5服务器(与上面相同)(4个主服务器,8个从服务器)
  • 1个svn服务器(我们使用的旧服务器)

我的想法是镜像它们(Web服务器),然后将代码从SVN推送到所有服务器.这个好吗?

svn lamp

29
推荐指数
1
解决办法
1320
查看次数

什么是Options + FollowSymLinks?

我正在使用计算机上的Lamp服务器.我开始使用Laravel php框架.在我的.htaccess中,如果我使用Options + FollowSymLinks,我会得到500错误.如果我注释掉,我必须在我的所有地址中使用index.php ..example:

/~ytsejam/blog/public/index.php/login

我使用Arch Linux.有办法解决吗?

编辑:我通过使用虚拟主机解决了这个问题.并从laravel文件夹中的application/config/application.php中删除index.php.

linux apache lamp laravel

28
推荐指数
3
解决办法
10万
查看次数

如何在Amazon EC2实例中启用Root SSH访问?

这个问题在过去几天一直困扰着我.

我一直在努力在Amazon EC2上设置LAMP服务器.主要问题是我正在为需要大量高端处理的客户端编写应用程序,而Amazon EC2似乎是一个不错的选择.

最初,我开始使用基本的AMI,它真的没有任何东西.我尝试使用root访问权限登录SSH(使用WinSCP),我被告知要使用ec2-user.

我尝试使用ec2-user,我能够登录.但是,我仍然没有root访问权限,无法安装apache.我做了一些理由,我发现了"sudo"命令,几乎我在这个问题上阅读的每篇文章都说要么使用root访问权限,要么登录ec2-user和用户sudo.

我已经尝试了另一个已经安装了LAMP的AMI.我能够让它工作,建立一个数据库并开始运行一个网站.但是,我仍然需要安装一些扩展.也就是说,我试图用于此应用程序的API需要安装SOAP.

这是我的困境:

/$ whereis soap
soap:
/$ whereis yum
yum: /usr/bin/yum /etc/yum /etc/yum.conf /usr/share/man/man8/yum.8.gz
/$ yum install php-soap
Loaded plugins: fastestmirror, priorities, security
You need to be root to perform this command.
/$ sudo yum install php-soap
sudo: sorry, you must have a tty to run sudo

Command 'sudo yum install php-soap' failed with return code 1 and error message sudo: sorry, you must have a tty to run sudo
Run Code Online (Sandbox Code Playgroud)

我不能使用yum因为我没有root访问权限,每当我登录root时它会告诉我使用ec2-user或提供我没有的密码.另一个选择是使用sudo让ec2-user像root一样,但我总是得到错误'抱歉,你必须有一个tty来运行sudo.我在网上运行了这个错误消息,似乎我需要将用户添加到sudoers ...我不能没有root访问权限.

这个完全相同的问题困扰着我两个独立的AMI.在第一次我收到一条消息说我必须以ec2-user身份登录(我必须有一个tty才能运行sudo),而第二个(安装了LAMP)要求我输入root用户的密码,并为用户输入密码我得到了同样的sudo错误.

以下是我使用的AMI的ID: …

ssh lamp amazon-ec2

27
推荐指数
2
解决办法
3万
查看次数