Ubuntu12.04快速部署 Nginx + MySQL + PHP + Memcached + XCache + phpMyAdmin

纯属MarkDown,我个人不大喜欢这类文章,按部就班,没啥思考性。

安装Nginx

注意,我下面的操作都是在一台干净的系统上进行的

#安装前,更新系统
sudo apt-get update
sudo apt-get upgrade
 
#安装Nginx
sudo apt-get install nginx-full

#装好后,配置文件都在/etc/nginx/目录下面,网站目录在/usr/share/nginx/www/下面

安装PHP

#安装PHP
sudo apt-get install php5-fpm
 
#修改Nginx配置,使其可以支持PHP
vim /etc/nginx/sites-enabled/default

修改其中支持PHP的部分,更新为以下内容:

location ~ \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    include fastcfi_params;
}

在网站目录下面新建一个php脚本,检测PHP环境是否搭建成功:

vim /usr/share/nginx/www/phpinfo.php

代码内容如下:

<?php
    phpinfo();
?>

重新加载一次Nginx的配置文件,并修改网站目录权限

sudo service nginx reload
 
chown www-data:www-data /usr/share/nginx/www/ -R
chmod 755 /usr/share/nginx/www/ -R

打开浏览器,输入IP/phpinfo.php,看看显示是否正常。

安装MySQL和phpMyAdmin

#安装MySQL
sudo apt-get install mysql-server php5-mysql

期间,会让你设置MySQL的用户名和密码,你照常设置即可。

#安装phpMyAdmin
sudo apt-get install phpMyAdmin
 
ln -s /usr/share/phpmyadmin /usr/share/nginx/www/phpmyadmin
 
#保险起见,检查一下目录权限,如果权限不对,如上文修改权限

期间,也会让你设置phpMyAdmin的帐号密码,检查phpMyAdmin是否正常工作的方法是登录用一下,浏览器输入ip/phpMyAdmin/index.php运行即可。

安装Memcached和XCache

sudo apt-get install php5-xcache php5-memcached memcached
 
#重新加载一次php配置文件,使其生效
sudo service php5-fpm reload

浏览器输入ip/phpinfo.php检查Memcached和XCache是否安装成功。

安装SendMail

没注意之前我的WP一直发不出邮件,原来我没有安装邮件模块。

sudo apt-get install sendmail

就这么简单,一句代码,安装完成后重启一下php-fpm就好

sudo service php5-fpm restart

现在PHP的mail()函数就能正常使用了,我们可以给WP装上WordPress Database Backup自动备份数据并发送到我们的TB级别的邮箱中~~

结语:

自此,一台性能还算不错的PHP Server就部署好了。

为啥选Ubuntu 12.04?因为是LTS呗,其实没为啥,随便哪款Linux都可以,apt-get用得顺手。

为啥选Nginx?处理并发请求完胜Apache,不过我很喜欢Apache自带的benchmark,功能强大,在同局域网中发起测试不错。

为啥选PHP?我不会Java、不会Python…

为啥选MySQL?难道你不要数据库?

为啥选XCache?为啥选Memcached?因为Ubuntu自带有这两个的包,懒得编译。

前者的价值体现如下:

后者的价值体现如下:

PS:

之前在帷千的一个项目,用上了Redis,其实也可以改用Memcached(毕竟我只是做的INC这样的原子操作,不过放弃Redis的话,持久化存储的问题,就需要另外解决了),Ubuntu自带php5-memcached包,安装比phpredis要方便很多,虽然那个也不是很麻烦…

文中截图来自《Pro PHP Application Performance》一书,这书把PHP的生命周期讲得挺过瘾的,薄薄一本,值得一读。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

手把手教你如何通过流氓WiFi热点实施网络钓鱼

想必大家或多或少都听说过社会工程学技术吧?接下来,让我们看看如何在现实生活中运用社工技巧。 ? 在这篇文章中,我们将会创建一个钓鱼页面,这个页面通过一个流氓W...

47960
来自专栏python开发者

安全防范:nginx下git引发的隐私泄露问题

安全防范:nginx下git引发的隐私泄露问题 1   安全事件 最近阿里云服务器后台管理系统中收到一条安全提示消息,系统配置信息泄露: http://my.d...

252100
来自专栏Seebug漏洞平台

从 CVE-2018-8495 看 PC 端 url scheme 的安全问题

本文受 CVE-2018-8495 漏洞的启发,以学习的目的,针对 PC 端 url scheme 的安全问题进行了分析研究。

13910
来自专栏沈唁志

宝塔面板Mysql 5.6版本无法正常启动的解决方法

朋友找我的时候说的是 Mysql 启动不了,看他发的截图是宝塔面板,就要来了面板信息去看了一下

2.3K20
来自专栏Esofar 开发日记

[转]Nginx基本功能极速入门

本文主要介绍一些Nginx的最基本功能以及简单配置,但不包括Nginx的安装部署以及实现原理。废话不多,直接开始。

11640
来自专栏Seebug漏洞平台

Discuz!X ≤3.4 任意文件删除漏洞分析

Discuz!X社区软件,是一个采用 PHP 和 MySQL 等其他多种数据库构建的性能优异、功能全面、安全稳定的社区论坛平台。

44980
来自专栏小白安全

小白博客 Kali Linux - 开发工具介绍及应用

在本章中,我们将学习Kali Linux提供的各种开发工具。 Metasploit的 正如我们之前提到的,Metasploit是Rapid7的产品,大...

42560
来自专栏北京马哥教育

linux安全小贴士

对于系统管理员,让产品的系统更安全,免于骇客和黑客的攻击,一直是一项挑战。这是我们关于“如何让Linux系统更安全” 或者 “加固Linux系统“之类话题的第一...

37480
来自专栏Jerry的SAP技术分享

错误消息 parent.relativePath points at wrong local POM的处理方法

Project build error: Non-resolvable parent POM for com.sap.cloud.sample:connecti...

1.2K20
来自专栏HappenLee的技术杂谈

Ubuntu系统下静态DNS配置详解

因为实验室实现的拟态存储系统需要实现动态变更ip地址,所以需要搭建一个dns服务器,并且将需要查询变更ip地址的服务器都绑定到同一台dns服务器之上。通常在Re...

22830

扫码关注云+社区

领取腾讯云代金券