后续我再把这个文档改成脚本

下载nginx,wget 是一个下载命令-c 是断点续传(不要也这个也可以)

[root@bogon ~]# wget -c http://nginx.org/download/nginx-1.7.9.tar.gz
[root@bogon ~]# ls
anaconda-ks.cfg Downloads Pictures Videos Desktop initial-setup-ks.cfg nginx-1.7.9.tar.gz Public Documents Music original-ks.cfg Templates
[root@bogon ~]# tar zxvf nginx-1.7.9.tar.gz
[root@bogon ~]# ls
anaconda-ks.cfg Downloads nginx-1.7.9 Pictures Videos
Desktop initial-setup-ks.cfg nginx-1.7.9.tar.gz Public Documents Music original-ks.cfg Templates
[root@bogon ~]# cd nginx-1.7.9/
[root@bogon nginx-1.7.9]# ls
auto CHANGES.ru configure html Makefile objs src
CHANGES conf contrib LICENSE man README
[root@bogon nginx-1.7.9]# yum -y install gcc-c++ pcre-devel zlib-devel
[root@bogon nginx-1.7.9]# ./configure --prefix=/usr/etc/ngin
[root@bogon nginx-1.7.9]# make
[root@bogon nginx-1.7.9]# make install
[root@bogon nginx-1.7.9]# cd /usr/etc/ngin
[root@bogon ngin]# ls
client_body_temp fastcgi_temp logs sbin uwsgi_temp
conf html proxy_temp scgi_temp
[root@bogon ngin]# cd sbin
[root@bogon sbin]# ./nginx

现在我们尝试访问网站192.168.2.128(这个是我执行上面这些操作的虚拟系统ip)发现无法打开网站
我们还需要关闭防火墙
systemctl stop firewalld.service #停止firewall
现在应该可以访问了

补充一下nginx的重启与停止
nginx -s reload :修改配置后重新加载生效
nginx -s stop :快速停止nginx

扩展知识:systemctl disable firewalld.service #禁止firewall开机启动
或者iptables -F也可以,这个命令是清空防火墙规则
如果不想关闭防火墙,则可以给防火墙增加规则,让数据通过80端口
[root@localhost init.d]# firewall-cmd –add-port=80/tcp
success
再次访问 http://192.168.2.128/ 正常

接着mysql/mariadb的安装: yum install mysql mysql-server (我是使用mariadb的,yum install mariadb mariadb-server,启动systemctl start mariadb服务后,终端输入mysql_secure_installation回车可以修改mariadb密码)

然后php的安装:

yum install php-fpm php     (注意php-fpm不能缺少,否则会导致nginx无法正常识别php)
配置、启动 php-fpm

vi /etc/php.ini
找到并取消注释,设置成:
cgi.fix_pathinfo=0

vi /etc/php-fpm.d/www.conf

找到并取消注释,设置成你希望管理 www 应用的用户(我这里统一用用户 bp)
listen.owner =bp
listen.group = bp

启动 php-fpm 监听服务
systemctl start php-fpm

配置、启动 Nginx

更换网站目录所有者为 bp。 root 用户执行
chown bp:bp /usr/etc/ngin/html -Rf

从此,以后就用用户 bp 来登录并维护 /usr/etc/ngin/html中的数据

现在我们还需要修改/usr/etc/ngin/conf/nginx.conf
直接分享我的配置 /usr/etc/ngin/conf/nginx.conf
下面只是需要修改的部分,有注释的地方就是需要改的

user bp;#把原来的那句注释去掉,修改用户名

events {
}

http {
include /etc/nginx/mime.types;
server {
root /data/wwwroot;

    location / {
index index.html index.htm index.php; #加一个index.php吧
} error_page 404 #去掉注释符号; location ~* \.php$ { #需要去掉这几行的注释符号
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;#改$document_root那里就可以了
include fastcgi_params;
}
}

}

重启 Nginx 服务器,这步也很关键

测试php是否能用vi /usr/etc/ngin/html/index.php,内容如下

[root@bogon sbin]# yum install php-mysql -y

重启一下php-fpm

然后就可以在phpinfo()里看到mysql了,也就是说我们现在可以使用mysql了(说实在的我的就没有正常显示,我需要先在php文件里打印phpinfo函数,然后才能使用显示succeed,否则一直刷新都是空白)

测试是否能够正常连接数据库,php页面代码如下,正常显示ok

[root@localhost nginx]# cat html/test.php
<?php
$link=mysql_connect('127.0.0.1','root','');
if($link)
echo 'ok';
else
echo "didn't work";
mysql_close();
?>
[root@localhost nginx]#

如果不能浏览网页的话,就直接把防火墙和selinux关闭,应该就可以,怎们在不关闭它们的情况下正常访问的配置我以后再加上来

在实验过程中我遇到了一个问题,那就是我把
location ~ .php$ {
proxy_pass http://127.0.0.1;
}
这一部分给注释了,然后测试php页面时提示错误,页面不可用。后来我返回来把这里注释掉后又恢复正常了。但有时候注释掉又没报错,不知道是不是因为服务没有完全重启启动成功还是为什么。。

centos 7.0 lnmp成功安装过程的更多相关文章

  1. centos 7.0 lnmp成功安装过程(很乱)

    下载nginx [root@localhost src]# wget http://nginx.org/download/nginx-1.7.9.tar.gz --2015-01-24 12:55:2 ...

  2. CentOS 7.0 Nvidia显卡安装步骤

    from: http://blog.sina.com.cn/s/blog_49c0985a0102v3fa.html CentOS 7.0 Nvidia显卡安装步骤: 1 在英伟达官网下载相应驱动 搜 ...

  3. CentOS 6.0图解网络安装全过程

    转自CentOS 6.0图解网络安装全过程 国内镜像站点(东北大学.网易) 网易镜像站点:http://mirrors.163.com/centos/6.0/isos/ 中科大镜像站点:http:// ...

  4. CentOS 7.0 使用 yum 安装 MariaDB

    CentOS 7.0 使用 yum 安装 MariaDB 与 MariaDB 的简单配置   1.安装MariaDB 安装命令 yum -y install mariadb mariadb-serve ...

  5. centos 7.0 nginx 1.7.9成功安装过程

    centos 7.0根目录 的目录构成 [root@localhost /]# lsbin dev home lib64 mnt proc run srv tmp varboot etc lib me ...

  6. (转) centos 7.0 nginx 1.7.9成功安装过程

    centos 7.0根目录 的目录构成 [root@localhost /]# lsbin dev home lib64 mnt proc run srv tmp varboot etc lib me ...

  7. window 2008+apache2.4.4+php5.5+mysql-5.6.12+phpmyadmin4.0.4.1安装过程(参考他人文章基础上加上自己遇到的问题)

    一.window server2008的安装 1.我用U盘安装的,先用UltraISO把server2008刻录到U盘中,过程我搜了一下,帖个地址: http://wenku.baidu.com/vi ...

  8. MacBook Pro 安装win7 64 成功安装过程总结

    安装对象: MacBook Pro (13 英寸, 2010 年中) 中安装win7 64位操作系统(原版安装非Ghost),且只保留win7系统即可. 场景还原: 拿到笔记本时,笔记本中已无Mac ...

  9. centos 7.0 查看所有安装的包

    rpm方式安装的包 默认 最小化安装centos 7.0 rpm -qa 查看所有安装的包 [root@localhost ~]# rpm -qa biosdevname-0.5.0-10.el7.x ...

随机推荐

  1. day35 数据库介绍和初识sql

    今日内容: 1. 代码: 简易版socketsever 2.数据库(mysql)简单介绍和分类介绍 3.mysql root修改密码 4.修改字符集编码 5.初识sql语句 1.简易版socketse ...

  2. 非递归实现二叉树的三种遍历操作,C++描述

    body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...

  3. Java面向对象习题

    1: 抛出异常:throw声明异常:throwsthrow用于在程序中抛出异常,throws用于在方法内抛出异常.throw抛出的异常没有被处理的话必须有throws有throws ,但是不一定必须有 ...

  4. 《Python》re模块补充、异常处理

    一.re模块 1.match方法 import re # match 验证用户输入的内容 ret = re.match('\d+', 'hhoi2342ho12ioh11') print(ret) # ...

  5. 关于Xcode9 无法读取文件的问题

    以前我们加载本地文件的时候也许没有注意,可是在Xcode9中会出现许多问题,经常会出现图片无法显示,本地html无法加载等问题: 当然不是Xcode的问题,只是以前我们并没有注意,其实Xcode对这些 ...

  6. 8.4 C++标准输入流

    参考:http://www.weixueyuan.net/view/6410.html 总结: 所谓标准输入是指从标准输入设备中输入设备,通常来讲我们可以将标准输入设备理解为键盘. cin是标准输入类 ...

  7. Linux(centos) 下curl模拟Http get / post请求 [ curl ]

    一.get请求 curl "http://www.baidu.com"  如果这里的URL指向的是一个文件或者一幅图都可以直接下载到本地 curl -i "http:// ...

  8. Map的isEmpty()与==null的区别

    isEmpty()方法判断Map是否有内容(即new分配空间后是否put键值对),若没有内容则true,否则false == null是判断map是否为null(即是否new分配空间,和其中的键值对没 ...

  9. Ajax的返回状态码(status)

    XMLHttpRequest.status: 1xx-信息提示 这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个1xx响应. 100-继续. 101-切换协议. 2xx-成功 ...

  10. shell脚本实例-实现监控tcp的链接状态另一种方式批量创建用户

    Array实现TCP的链接状态 #!/usr/bin/bash declare -A status type=`ss -an | grep :80|awk '{print $2}'` for i in ...