[转] ubuntu 12.04 安装 nginx+php+mysql web服务器
Nginx 是一个轻量级,以占用系统资源少,运行效率而成为web服务器的后起之秀,国内现在很多大型网站都以使用nginx,包括腾讯、新浪等大型信息网站,还有淘宝网站使用的是nginx二次开发的web服务器。
直接php+mysql这是Linux web服务器的黄金组合。今天我们一来学如何在ubuntu 12.04 中架设lnmp。
1. 使用官方PPA安装 Nginx 最新版本,使用以下命令:
sudo add-apt-repository ppa:nginx/stable
sudo apt-get update
sudo apt-get install nginx
Nginx相关控制命令:
启动 Nginx:
sudo /etc/init.d/nginx start
浏览器浏览运行情况输入:http://localhost ; 如果现实”Welcome to nginx!”,表明你的 Nginx 服务器安装成功!
关闭 Nginx:sudo /etc/init.d/nginx stop;
重启 nginx:sudo /etc/init.d/nginx restart;
2. 安装 PHP,输入以下命令:
sudo apt-get install php5-cli php5-cgi php5-fpm php5-mcrypt php5-mysql spawn-fcgi
配置Nginx站点,设置:
sudo vi /etc/nginx/sites-available/default
修改 “index” 为:“index index.html index.htm index.php;”
删除以下内容的注释:
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}
测试,创建网站目录
sudo mkdir /var/www/
建立一个虚拟站点:
sudo vi /etc/nginx/sites-available/default
修改root目录: “root /var/www;”
建立一个测试页面:
sudo vi /var/www/test.php
在测试页面test.php中加入以下代码:
<?php phpinfo();?>
配置Nginx和spawn-fcgi配合运行
(1) 在/etc/nginx/fastcgi_params 文件,加入一行:
|
1
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
(2) 另外需要在PHP-CGI的配置文件(Ubuntu 上此配置文件位于/etc/php5/cgi/php.ini)中,找到cgi.fix_pathinfo选项,修改为:
|
1
|
cgi.fix_pathinfo=1;
|
这样php-cgi方能正常使用SCRIPT_FILENAME这个变量.
重启nginx和php-cgi
sudo /etc/init.d/nginx restart
php-cgi -b 127.0.0.1:9000
浏览器输入以下地址,看看有没有安装成功!
http://localhost/test.php
直接使用php-cgi的FastCGI运行方式有两个问题(貌似应该有解决方案,如果知道的话可以教教我):
如果进程崩溃,难以配置重新启动、单进程的效率低
因此,我们可以利用spawn-fcgi来控制进程的运行:
参数含义如下:
-f <fcgiapp> 指定调用FastCGI的进程的执行程序位置,根据系统上所装的PHP的情况具体设置
-a <addr> 绑定到地址addr
-p <port> 绑定到端口port
-s <path> 绑定到unix socket的路径path
-C <childs> 指定产生的FastCGI的进程数,默认为5(仅用于PHP)
-P <path> 指定产生的进程的PID文件路径
-u和-g FastCGI使用什么身份(-u 用户 -g 用户组)运行,Ubuntu下可以使用www-data,其他的根据情况配置,如nobody、apache等
/usr/bin/spawn-fcgi.standalone -a 127.0.0.1 -p 9000 -C 8 -u www-data -g www-data -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid
3. 安装 MySQL,输入以下命令:
sudo apt-get install mysql-server mysql-client
中间会提示输入Root用户密码,依次输入即可.
启动MySQL
|
1
|
sudo /etc/init.d/mysql start
|
测试mysql服务是否正常:
运行
|
1
|
mysql -uroot -p
|
输入mysql密码
|
1
|
show databases;
|
如果看到下面的内容
| Database |
| information_schema |
| mysql |
则mysql已正确安装了.
http://www.lupaworld.com/article-217779-1.html
http://www.jb51.net/article/23901.htm
http://www.cnblogs.com/goodspeed/archive/2010/03/27/1698609.html
http://www.cnblogs.com/mchina/archive/2012/05/17/2507102.html
http://my.oschina.net/lht007/blog/112455
[转] ubuntu 12.04 安装 nginx+php+mysql web服务器的更多相关文章
- ubuntu 12.04 安装 nginx+php+mysql web服务器
Nginx 是一个轻量级,以占用系统资源少,运行效率而成为web服务器的后起之秀,国内现在很多大型网站都以使用nginx,包括腾讯.新浪等大型信息网站,还有淘宝网站使用的是nginx二次开发的web服 ...
- Ubuntu 12.04 安装 Apache2+PHP5+MySQL
LAMP是Linux web服务器组合套装的缩写,分别是Apache+MySQL+PHP.此教程教大家如何在Ubuntu 12.04 LTS server 上安装Apache2服务器,包括PHP5(m ...
- ubuntu 14.04安装nginx+php+mysql
前段时间的折腾,颇费一番周折,过程中发现网上的许多资料比较老旧过时了,所以在这里也简单把过程重新整理一遍,争取一帖解决问题. 基于最新的Ubuntu 14.04(2014年9月)搭建nginx.php ...
- ubuntu 12.04 搭建nginx + php + mysql +phpmyadmin
1. 使用官方PPA安装 Nginx 最新版本,使用以下命令:sudo add-apt-repository ppa:nginx/stablesudo apt-get updatesudo apt-g ...
- ubuntu 12.04 安装nginx
nginx是一个强大的高性能反向代理服务器,其特点是占内存少,并发能力强,在高并发的情况下是apache 的一个不错的代替品,能够支持高达50000个并发连接数的响应,那么这么强大的武器,究竟如何在l ...
- ubuntu12.04 安装nginx+php+mysql (lnmp)的web服务器环境
1.Ubuntu12.04 安装nginx+php+mysql (lnmp)的web服务器环境 http://blog.db89.org/ubuntu12-04-install-nginx-php-m ...
- ubuntu 12.04 安装Docker 实战
2016-3-8 从网络服务商那里申请到一台Ubuntu测试服务器,用来测试安装Docker环境. 注:本人初学Docker,对Linux命令也仅是稍稍了解,如有错误,烦请告知. 查看系统相关信息 可 ...
- Ubuntu 12.04 安装MySQL
本文地址:http://www.cnblogs.com/yhLinux/p/4012689.html 本文适合新手入门. 本文是对 Ubuntu 12.04 环境下安装 MySQL 的记录,通过这两天 ...
- ubuntu 12.04 下nginx安装步骤
2013-12-05 10:25 2289人阅读 评论(0) 收藏 举报 分类: Ubuntu/Linux(17) nginx(4) 转自:http://blog.csdn.net/acccca ...
随机推荐
- 数组Api .map()的使用
之前并没有过多的使用过这个Api,在此记录下对其的理解,方便以后多多使用. 首先是对map的说明: var mappedArray = array.map(callback[, thisObject] ...
- Unity各平台路径总结
路径是Unity开发中令人头疼的一个问题,根据我的开发经验,现将开发中遇到的路径问题总结如下: 1. 如何读取Application.streamingAssetsPath下的文件? Edit.iOS ...
- 【译】iOS人性化界面指南(iOS Human Interface Guidelines)(一)
1. 引言1.1 译者自述 我是一个表达能力一般的开发员,不管是书面表达,还是语言表达.在很早以前其实就有通过写博客锻炼这方面能力的想法,但水平有限实在没有什么拿得出手的东西分享.自2015年7月以来 ...
- java学习之运算符
学习完了变量+常量,现在只能简单的声明变量+赋值+打印变量. 但是程序要做的就是去处理数据,把原本散乱的数据,处理成有意义的数据,供我们来使用,这就涉及到了运算符的应用. 算数运算符常用的种类: 加法 ...
- poj 3007 Organize Your Train part II(静态字典树哈希)
Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 6700 Accepted: 1922 Description RJ Freigh ...
- HDU4681 String(dp)
题目链接. #include <iostream> #include <cstdio> #include <cstring> #include <cstdli ...
- 「Poetize9」升降梯口
3056: 升降梯口 Time Limit: 2 Sec Memory Limit: 128 MBSubmit: 43 Solved: 42[Submit][Status] Description ...
- CH Round #51 - Shinrein祭 #1
A.Phorni 题目:http://www.contesthunter.org/contest/CH%20Round%20%2351%20-%20Shinrein祭%20%231/Phorni 没做 ...
- 部署ASP.Net项目 遇到总是启用目录浏览或者报HTTP 错误 403.14 - Forbidden 的原因
部署Asp.Net 网站总是报下面的问题 原因: 没有为网站指定默认文档,增加默认文档 1.选中“默认文档” 2.点击右边“打开功能” 点击右边“添加”按钮,把你想作为的默认页面添加就可以了,重启服务 ...
- linux内网机器访问外网代理设置squid
公司一般出于安全考虑, 在同一局域网中只有一台机器可以访问外网,运维进行了整体的限制, 但是在后面的工作中,需要在机器上安装一些软件,及命令,所以其他的机器需要访问外网来简化工作, 但又不能打乱原有运 ...