centos6安装lnmp
CentOS 6 默认仓库不包含nginx,我们可以手动添加nginx的仓库。
访问nginx官网获取repo文件
我们需要先访问nginx的官方网站,获取官方的仓库地址。
点击这里访问nginx官方文档。
依照文档中的说明,最后的repo文件应该是下面这样,您可以直接复制。
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1
使用vim将上面的配置保存到/etc/yum.repos.d/nginx.repo
文件中。
安装nginx
安装好仓库后可以直接使用yum安装nginx。
yum install -y nginx
启动nginx
执行service nginx start
启动nginx。
启动成功后执行netstat -tunlp|grep 80
就可以看到nginx已经启动了80端口的监听。
- [root@localhost ~]# netstat -tunlp|grep 80
- tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1881/nginx
并且通过浏览器直接访问服务器的ip地址,能看到已经出现了nginx的欢迎页面。
设置nginx为开机启动
执行chkconfig nginx on
设置nginx为开机启动。
安装MySQL
CentOS 6的默认仓库直接包含MySQL,可以直接通过yum安装 MySQL Server。
yum install -y mysql mysql-server
MySQL服务名称为mysqld
,我们可以通过下面命令启动MySQL服务。
service mysqld start
同nginx一样,使用下面命令将mysqld加入开机启动任务。
chkconfig mysqld on
启动成功后执行netstat -tunlp|grep 3306
就可以看到mysqld已经启动了3306端口的监听。
- [root@localhost ~]# netstat -tunlp|grep 3306
- tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2094/mysqld
还可以通过mysql客户端连接到MySQL服务器。
- [root@localhost ~]# mysql
- Welcome to the MySQL monitor. Commands end with ; or \g.
- Your MySQL connection id is 2
- Server version: 5.1.73 Source distribution
- Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
- Oracle is a registered trademark of Oracle Corporation and/or its
- affiliates. Other names may be trademarks of their respective
- owners.
- Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
- mysql>
安装PHP
CentOS 默认仓库中包含了php套件,我们可以直接使用yum安装。
下面是最小化安装,我们使用php-fpm来解析php。
yum install -y php-cli php-fpm
您可以随时使用yum list php-*
查看其它php扩展,下面是默认仓库中包含的所有扩展。
- [root@localhost ~]# yum list php-*
- Loaded plugins: fastestmirror
- Loading mirror speeds from cached hostfile
- * base: mirrors.sina.cn
- * extras: mirrors.sina.cn
- * updates: mirrors.sina.cn
- Installed Packages
- php-cli.x86_64 5.3.3-48.el6_8 @updates
- php-common.x86_64 5.3.3-48.el6_8 @updates
- php-fpm.x86_64 5.3.3-48.el6_8 @updates
- Available Packages
- php.x86_64 5.3.3-48.el6_8 updates
- php-bcmath.x86_64 5.3.3-48.el6_8 updates
- php-dba.x86_64 5.3.3-48.el6_8 updates
- php-devel.x86_64 5.3.3-48.el6_8 updates
- php-embedded.x86_64 5.3.3-48.el6_8 updates
- php-enchant.x86_64 5.3.3-48.el6_8 updates
- php-gd.x86_64 5.3.3-48.el6_8 updates
- php-imap.x86_64 5.3.3-48.el6_8 updates
- php-intl.x86_64 5.3.3-48.el6_8 updates
- php-ldap.x86_64 5.3.3-48.el6_8 updates
- php-mbstring.x86_64 5.3.3-48.el6_8 updates
- php-mysql.x86_64 5.3.3-48.el6_8 updates
- php-odbc.x86_64 5.3.3-48.el6_8 updates
- php-pdo.x86_64 5.3.3-48.el6_8 updates
- php-pear.noarch 1:1.9.4-5.el6 base
- php-pecl-apc.x86_64 3.1.9-2.el6 base
- php-pecl-apc-devel.i686 3.1.9-2.el6 base
- php-pecl-apc-devel.x86_64 3.1.9-2.el6 base
- php-pecl-memcache.x86_64 3.0.5-4.el6 base
- php-pgsql.x86_64 5.3.3-48.el6_8 updates
- php-process.x86_64 5.3.3-48.el6_8 updates
- php-pspell.x86_64 5.3.3-48.el6_8 updates
- php-recode.x86_64 5.3.3-48.el6_8 updates
- php-snmp.x86_64 5.3.3-48.el6_8 updates
- php-soap.x86_64 5.3.3-48.el6_8 updates
- php-tidy.x86_64 5.3.3-48.el6_8 updates
- php-xml.x86_64 5.3.3-48.el6_8 updates
- php-xmlrpc.x86_64 5.3.3-48.el6_8 updates
- php-zts.x86_64 5.3.3-48.el6_8 updates
同样的,我们需要将php-fpm设置为开机启动。
- chkconfig php-fpm on
- service php-fpm start
启动完成后,我们可以通过netstat -tunlp|grep 9000
命令查看到,php-fpm 已经开始监听9000端口。
- [root@localhost ~]# netstat -tunlp|grep 9000
- tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 2147/php-fpm
配置nginx使其支持php程序
接下来我们演示如何部署web服务的内容。
创建web目录和文件
我们假设web目录为/var/www
,创建并进入这个目录。
- mkdir /var/www
- cd /var/www
我们新建两个文件,一个html文件,一个php文件,稍后会看到效果。
a.html的内容为:
<h1>Hello World</h1>
b.php的内容为:
- <?php
- phpinfo();
- // 将会打印出所有的PHP信息
- ?>
变更nginx配置
我们使用vim打开nginx第一个站点的配置文件vim /etc/nginx/conf.d/default.conf
。
将第9行的root
变更为我们指定的目录。
修改
- location / {
- root /usr/share/nginx/html;
- index index.html index.htm;
- }
变更为
- location / {
- root /var/www;
- index index.html index.htm;
- }
将30-36行的注释去掉,使其支持php文件,同时还需要修改root
和fastcgi_param
选项指定我们的工作目录。
修改
- # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
- #
- #location ~ \.php$ {
- # root html;
- # fastcgi_pass 127.0.0.1:9000;
- # fastcgi_index index.php;
- # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
- # include fastcgi_params;
- #}
变更为
- # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
- #
- location ~ \.php$ {
- root /var/www;
- fastcgi_pass 127.0.0.1:9000;
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name;
- include fastcgi_params;
- }
保存后,执行service nginx reload
重新载入nginx配置。
此时,我们可以通过浏览器直接访问我们刚才建立的文件了。
结语
以上,就是lnmp的简单安装和配置,它已经可以解析php程序。生产环境中,往往还要对其配置文件进行各种更改,已对其性能进行优化。
例如,php的session目录可能默认会没有写权限、nginx的连接数要更改等各种问题。
熟悉了lnmp的简单安装以后,就可以继续深入了解,学习手动编译指定版本的nginx、php或mysql服务了。
centos6安装lnmp的更多相关文章
- 阿里云centos6.5实践编译安装LNMP架构web环境
LNMP 代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构. 本次测试需求: **实践centos6.5编译安装 LNMP生产环境 架构 web生产环境 使用 ngx_pa ...
- CENTOS6.5源码安装LNMP
CENTOS6.5源码安装LNMP 一.安装前准备 ########################################################################## ...
- linux--->阿里云centos6.9环境配置安装lnmp
阿里云centos6.9环境配置安装lnmp mysql安装 本人博客:http://www.cnblogs.com/frankltf/p/8615418.html PHP安装 1.安装依赖关系 yu ...
- Centos6.5中 一键安装LNMP 安装Yii2.0 手工配置
1.一键安装LNMP cd /usr wget -c http://soft.vpser.net/lnmp/lnmp1.2-full.tar.gz tar zxf lnmp1.-full.tar.gz ...
- 细化如何安装LNMP + Zabbix 监控安装文档以及故障排除
1.LNMP所需安装包: 上传如下软件包到/soft目录中 mysql- (centos6. 64位自带)也可根据版本自行挑选,前提你了解这个版本 pcre-8.36.tar.gz nginx-.ta ...
- VPS CentOS-6 下 LNMP HTTP服务器的搭建
VPS CentOS-6 下 LNMP HTTP服务器的搭建 前言 恢复更新后的第一篇博文, 前段时间由于各种理由, 把博客更新给宕掉了, 个人独立博客的开发也搁浅了, 现在随着工作的逐步稳定, 决心 ...
- 急速安装lnmp 编译版本
急速安装lnmp 编译版本 安装msyql+PHP 系统centos6.5 安装 开发软件包 已经改成了163的源需要执行下面的代码 官网不自带 libmcrypt libmcrypt-devel w ...
- Centos7下使用yum安装lnmp zabbix3.2
1:配置epel-release mysql zabbix 源 配置epel源 wget http://mirrors.aliyun.com/epel/epel-release-latest-7.no ...
- CentOS 5.5编译安装lnmp
如果是安装Centos6.5记得Perl是必选的,否则无法安装VMWare Tools!!!!切记 如果出现make错误需要安装其他软件,装好后 make clean make install ...
随机推荐
- 阶段2-新手上路\项目-移动物体监控系统\Sprint1-声音报警子系统开发\第1节-Sprint Backlog规划
根据之前的sprint1-声音报警子系统是相对比较大的一个需求,需要把它进一步细化,然后指定sprint Backlog product Backlog是整个产品的功能列表! sprint Backl ...
- Http客户端再封装
Android系统上推荐的Http客户端从Apache变成[HttpURLConnection],主要理由包括 * 不过因为UrlConnection这组接口时间较早(Java 1.0), 接口的设计 ...
- DropDownList绑定数据库
this.DropDownList_设备列表.DataSource = dt_eq;//设置数据源 this.DropDownList_设备列表.DataTextField = "equip ...
- Mathematics Base - 期望、方差、协方差、相关系数总结
参考:<深度学习500问> 期望 在概率论和统计学中,数学期望(或均值,亦简称期望)是试验中每次可能结果的概率乘以其结果的总和.它反映随机变量平均取值的大小. 线性运算: \(E(ax+ ...
- Codeforces Round #527 (Div. 3)F(DFS,DP)
#include<bits/stdc++.h>using namespace std;const int N=200005;int n,A[N];long long Mx,tot,S[N] ...
- Mysql-2-数据库基础
(1)mysql是一个小型关系型数据库管理系统. (2)mysql是一个快速.多线程.多用户.健壮的SQL数据库服务器.与其他数据库管理系统比,mysql有以下的优势: mysql是一个关系数据库管理 ...
- Java: 面向对象程序设计(下)
1. 类的继承 继承的意义: 当一个类A继承了一个已存在的类B后,类A就用于了类B所有的非private的属性和方法,但同时类A还可以根据需要,添加新的方法和属性. 在Java语言中,一个类可以拥有多 ...
- PJzhang:英国通信总部GCHQ开源产品-网络瑞士军刀CyberChef
猫宁!!! 参考链接:https://www.4hou.com/info/news/981.html 这个产品免费开源易用,如果称之为网络瑞士军刀,没什么异议. github地址:https://gi ...
- web性能优化--缓存
什么是缓存? 缓存(Web缓存)是指代理服务器和客户端本地磁盘保存的资源副本.当 web 缓存发现请求的资源已经被存储,它会拦截请求,返回该资源的拷贝,而不会去源服务器重新下载. 缓存大致可以分为私 ...
- windows下安装python包
1.windows下成功安装好python后,在安装目录的Scripts目录下有easy_install和pip工具 2.如果没有安装pip,进入命令行,切换到python的安装目录下的Scripts ...