在CentOS 6上搭建LNMP环境

来源:互联网 发布:多益网络看准网 编辑:程序博客网 时间:2024/06/05 08:41

在CentOS6.3下实践通过。

1.关闭防火墙

[root@CentOS ~]# chkconfig iptables off


2.关闭selinux
vi /etc/sysconfig/selinux 
//将SELINUX=enforcing修改为disabled然后重启生效


3、配置CentOS 6.0 第三方yum源(CentOS默认的标准源里没有nginx软件包)
[root@CentOS ~]# yum install wget
//下载wget工具
[root@CentOS ~]# wget http://www.atomicorp.com/installers/atomic
//下载atomic yum源
[root@CentOS ~]# sh ./atomic
//安装提示输入时输yes
[root@CentOS ~]# yum check-update
//更新yum软件包


4.安装开发包和库文件
[root@CentOS ~]# yum -y install ntp make openssl openssl-devel pcre pcre-devel libpng 
libpng-devel libjpeg-6b libjpeg-devel-6b freetype freetype-devel gd gd-devel zlib zlib-devel 
gcc gcc-c++ libXpm libXpm-devel ncurses ncurses-devel libmcrypt libmcrypt-devel libxml2 
libxml2-devel imake autoconf automake screen sysstat compat-libstdc++-33 curl curl-devel


5.卸载已安装的apache、mysql、php
[root@CentOS ~]# yum remove httpd
[root@CentOS ~]# yum remove mysql
[root@CentOS ~]# yum remove php


6.安装nginx
[root@CentOS ~]# yum install nginx
[root@CentOS ~]# service nginx start
[root@CentOS ~]# chkconfig --levels 235 nginx on
//设2、3、5级别开机启动


7.安装mysql
[root@CentOS ~]# yum install mysql mysql-server mysql-devel
[root@CentOS ~]# service mysqld start
[root@CentOS ~]# chkconfig --levels 235 mysqld on
[root@CentOS ~]# mysqladmin -u root password "123456"
//为root用户设置密码
[root@CentOS ~]# service mysqld restart
//重启mysql


8.安装php
[root@CentOS ~]# yum install php lighttpd-fastcgi php-cli php-mysql php-gd php-imap php-ldap 
php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap 
php-tidy php-common php-devel php-fpm
//安装php和所需组件使PHP支持MySQL、FastCGI模式
[root@CentOS ~]# service php-fpm start
[root@CentOS ~]# chkconfig --levels 235 php-fpm on


9.配置nginx支持php
[root@CentOS ~]# mv /etc/nginx/nginx.conf /etc/nginx/nginx.confbak
//将配置文件改为备份文件
[root@CentOS ~]# cp /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf
//由于原配置文件要自己去写因此可以使用默认的配置文件作为配置文件
//修改nginx配置文件,添加fastcgi支持
[root@CentOS ~]# vi /etc/nginx/nginx.conf
index index.php index.html index.htm;
//加入index.php
location ~ \.php$ {
            root           /usr/share/nginx/html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html$fastcgi_script_name;
            include        fastcgi_params;
        }
//将以上代码注释去掉,并修改成nginx默认路径


10.配置php
//编辑文件php.ini,在文件末尾添加cgi.fix_pathinfo = 1
[root@CentOS ~]# vi /etc/php.ini


11.重启nginx php-fpm
[root@CentOS ~]# service nginx restart
[root@CentOS ~]# service php-fpm restart


12.建立info.php文件
[root@CentOS ~]# vi /usr/share/nginx/html/info.php
<?php
   phpinfo();
?>


13.测试nginx是否解析php
输入:192.168.1.105/info.php
显示php界面说明解析成功




简介

LNMP是Linux、Nginx、MySQL和PHP的缩写,这个组合是最常见的WEB服务器的运行环境之一。本文将带领大家在CentOS 6操作系统上搭建一套LNMP环境。

本教程适用于CentOS 6.x版本。

在安装LNMP环境之前,您需要先对CentOS操作系统做一些初始化的工作,可以参考CentOS系统初始化设置。


安装Nginx

美团云的CentOS系统模板中配置了内网源,下载速度较快,推荐使用yum安装Nginx:

sudo yum install nginx

按照提示,输入yes后开始安装。安装完毕后,Nginx的配置文件在/etc/nginx目录下。使用以下命令启动Nginx:

sudo service nginx start

您可以通过浏览器访问 http://<外网IP地址> 来确定Nginx是否已经启动。

最后我们通过chkconfig命令将Nginx设置为开机启动:

sudo chkconfig nginx on

安装MySQL

我们可以使用yum直接安装MySQL:

sudo yum install mysql-server

安装完成之后,执行以下命令重启MySQL服务:

sudo service mysqld restart

重启过程中会提示如何设置MySQL的root密码,我们按照提示进行操作:

sudo /usr/bin/mysql_secure_installation

这个脚本会经过一些列的交互问答来进行MySQL的安全设置。

首先提示输入当前的root密码:

Enter current password for root (enter for none):

初始root密码为空,我们直接敲回车进行下一步。

Set root password? [Y/n]

设置root密码,默认选项为Yes,我们直接回车,提示输入密码,在这里设置您的MySQL的root账户密码。

Remove anonymous users? [Y/n]

是否移除匿名用户,默认选项为Yes,建议按默认设置,回车继续。

Disallow root login remotely? [Y/n]

是否禁止root用户远程登录?如果您只在本机内访问MySQL,建议按默认设置,回车继续。 如果您还有其他云主机需要使用root账号访问该数据库,则需要选择n

Remove test database and access to it? [Y/n]

是否删除测试用的数据库和权限? 建议按照默认设置,回车继续。

Reload privilege tables now? [Y/n]

是否重新加载权限表?因为我们上面更新了root的密码,这里需要重新加载,回车。

完成后你会看到Success!的提示,MySQL的安全设置已经完成。我们可以使用以下命令登录MySQL:

mysql -uroot -p

按提示输入root密码,就会进入MySQL的交互界面,说明已经安装成功。

MySQL安装完成后默认监听外网的3306端口,有一定的安全隐患,我们通过编辑MySQL的配置文件,将MySQL服务修改为监听内网的3306端口,这样就不会被外界探测到,编辑/etc/my.cnf文件,在[mysqld]中增加一行:

bind-address=10.128.129.21

需要将上面的10.128.129.21替换成您的云主机的内网地址。内网地址可以从MOS控制台云主机列表中找到。然后重启MySQL服务使配置生效:

sudo service mysqld restart

最后我们使用chkconfig命令将MySQL设置为开机启动。

sudo chkconfig mysqld on

安装PHP

我们可以直接使用yum安装PHP:

sudo yum install php-fpm php-mysql

安装完成后我们将php-fpm启动:

sudo service php-fpm start

将php-fpm设置为开机启动:

sudo chkconfig php-fpm on

php安装完成之后,需要设置一下php session的目录:

sudo mkdir /var/lib/php/session/sudo chown -R apache:apache /var/lib/php/session/

这时php-fpm已经安装完毕,但是现在需要配置一下Nginx,在/etc/nginx/conf.d目录中新建一个名为php.conf的文件,其内容为:

server {    listen 8000;    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000    #    location ~ \.php$ {        root           /usr/share/php;        fastcgi_pass   127.0.0.1:9000;        fastcgi_index  index.php;        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;        include        fastcgi_params;    }}

然后执行以下命令使我们的配置生效:

sudo service nginx reload

以上我们配置了Nginx的8000端口用来测试,如果您在美团云控制台创建机器时选择了绑定防火墙,需要检查该防火墙是否允许8000端口,如果不允许的话,您可以在防火墙设置中新增防火墙,并关联到该主机。

我们在/usr/share/php目录下新建一个名为phpinfo.php的文件用来展示phpinfo信息,文件内容为:

<?php echo phpinfo(); ?>
http://blog.csdn.net/u010098331/article/details/51972282
http://blog.csdn.net/jinxingfeng_cn/article/details/14646813
https://yq.aliyun.com/articles/43240
0 0
原创粉丝点击