centos php +nginx,安装与配置nginx+php+mysql:centOS篇

1. 安装nginx

a.添加nginx的软件源,新建文件/etc/yum.repos.d/nginx.repo

b.在该文件中填写如下内容:[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=0

enabled=1

c.执行yum安装命令:

yum install nginx

264bafd63ba8e4e201e71785b78f7ca4.png

d.启动nginx服务:

service nginx start                //或者 /etc/init.d/nginx start

00d394c08a5ba7358c226544ac58aa13.png

e.常用的nginx命令:

/etc/init.d/nginx start           //或者service nginx start

/etc/init.d/nginx stop            //或者 service nginx stop

/etc/init.d/nginx restart        //或者 service nginx restart

配置文件在 /etc/nginx/nginx.conf

2. 安装mysql

a.输入安装命令: yum install mysql mysql-server

其中mysql表示客户端、mysql-server表示服务端

4337fb0c702ddb8f3ea2047692659a2d.png

b.启动mysql服务:

service mysqld start       // 或者使用 /etc/init.d/mysqld start 一样

3f7955e4e45156ed8ce9b552ed933028.png

c.设置mysql服务随系统启动:

chkconfig mysqld on

e07b514e4b885a4b1230baac8c721dfc.png

d.使用 /usr/bin/mysql_secure_installation 命令设置mysql的root密码以及禁止匿名访问等设置。

e.测试登录mysql:

输入mysql –u root –p

回车后再输入密码

使用命令”show databases; ”查看现有的数据库

8d2224c6f75e156a1568ab08c1668531.png

b6e4fcbf66aeceb3fd4c3221cd4dd683.png

f.允许root远程登录

mysql默认是不允许root账户的远程登录的,我们可以使用sql语句

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

来允许任意主机使用root账户(密码123456)来访问数据库。

f8e0dfcb1daef141d25075d08c696185.png

查看mysql的user表:

6cf305528cc523e052e0dfd1308aa82b.png

其中第四行host=’%’, user=’root’就表示允许所有主机使用root账户登录。

g.如果要关闭root账户的远程登录权限,则可以直接删除该行数据,然后刷新mysql的系统权限。

delete from mysql.user where host='%' and user='root';

flush privileges;

f566d1e03ed2b19043d151cf02352f5c.png

当然,在生产环境中,最好是要关闭数据库的远程登录。然后可以在服务器端配置一个phpMyAdmin,来提供远程管理数据库。

3. 安装php

a.添加软件源(因为可能有些php组件CentOS默认的软件源里找不到)rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

安装好后可以ls /etc/yum.repos.d目录下多了以下三个文件。

07cc04577210033e4765173cb899be1a.png

b.键入命令 yum install php php-fpm, 安装php以及FastCGI管理器php-fpm。

c.安装其他php扩展(可选,一般装个php-mysql, php-mbstring就差不多了)

yum install php-gd php-mysql php-mbstring php-xml php-mcrypt

d.启动php-fpm并设置为随机启动

service php-fpm start

chkconfig php-fpm on

4. 配置一个php网站

a.新建一个网站目录/alidata/www/test_site

b.在该目录下新建一个php文件info.php,内容如下:<?php

phpinfo();

?>

c.新建一个与该网站对应的nginx配置文件:

cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/test_site.conf

d.修改新建的conf文件,如下图所示,黄色的为修改的,红色表示要删除前面的#号注释。

f60fe89da6884ae089304ef998b10ae0.png

e.重启nginx服务:service nginx restart。然后就能通过ip+端口号来访问该网站了。http://your-ip:9001/info.php

5. 多个域名共用一个ip与80端口号。

情况是这样的,我有两个域名,两个网站,但只有一个服务器亦即只有一个公网ip。本来在本机测试的时候可以使用不同端口号的形式。 亦即网站A使用http://ip:9001;网站B使用http://ip:9002来访问。但不幸的是,域名服务商的域名解析只能到ip为止,不再细分端口号,只能使用80端口。即我的两个域名:www.domain-1.com与www.domain-2.com都只能解析到公网ip的默认端口80。

这样的话,我们可以利用nginx配置文件.conf中的server_name来让nginx识别不同的域名,以转向不同的目录。

建立两个网站目录 /www/domain-1与/www/domain-2,在目录内分别写一个php或index.html文件;

在/etc/nginx/conf.d目录下新建两个conf配置文件www.domain-1.conf与www.domain-2.conf;

以我们hawu.me的conf文件为例,其中listen为默认的80端口,server_name为要识别的域名

c58901fcd43fe167646260ce5736b86d.png

重启nginx服务,然后就能通过不同的域名来访问网站了,www.domain-1.com或者www.domain-2.com。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值