centos 7.0 lnmp成功安装过程
后续我再把这个文档改成脚本
下载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成功安装过程的更多相关文章
- 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 ...
- CentOS 7.0 Nvidia显卡安装步骤
from: http://blog.sina.com.cn/s/blog_49c0985a0102v3fa.html CentOS 7.0 Nvidia显卡安装步骤: 1 在英伟达官网下载相应驱动 搜 ...
- CentOS 6.0图解网络安装全过程
转自CentOS 6.0图解网络安装全过程 国内镜像站点(东北大学.网易) 网易镜像站点:http://mirrors.163.com/centos/6.0/isos/ 中科大镜像站点:http:// ...
- CentOS 7.0 使用 yum 安装 MariaDB
CentOS 7.0 使用 yum 安装 MariaDB 与 MariaDB 的简单配置 1.安装MariaDB 安装命令 yum -y install mariadb mariadb-serve ...
- 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 ...
- (转) 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 ...
- 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 ...
- MacBook Pro 安装win7 64 成功安装过程总结
安装对象: MacBook Pro (13 英寸, 2010 年中) 中安装win7 64位操作系统(原版安装非Ghost),且只保留win7系统即可. 场景还原: 拿到笔记本时,笔记本中已无Mac ...
- centos 7.0 查看所有安装的包
rpm方式安装的包 默认 最小化安装centos 7.0 rpm -qa 查看所有安装的包 [root@localhost ~]# rpm -qa biosdevname-0.5.0-10.el7.x ...
随机推荐
- 二叉树实现,C++语言描述
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...
- 协程(Coroutine)与多线程,多进程
执行多个任务可以使用多线程或多进程. 多进程中,同一个变量,各自有一份拷贝存在于每个进程中,互不影响 多线程中,所有变量都由所有线程共享.而线程间的切换是系统进行调度,无法控制,所以可能 一个进程中的 ...
- Cracking The Coding Interview 4.4
//Given a binary search tree, design an algorithm which creates a linked list of all the nodes at ea ...
- SpringMVC 接受页面传递参数
一共是五种传参方式: 一:直接将请求参数名作为Controller中方法的形参 public String login (String username,String password) : 解 ...
- `define、parameter、localparam三者的区别(转)
`define: 可以跨模块的定义,写在模块名称上面,在整个设计工程都有效.一旦‘define指令被编译,其在整个编译过程中都有效.例如,通过另一个文件中的`define指令,定义的常量可以被其他文件 ...
- Codeforces Round #495 (Div. 2) B
题目链接:http://codeforces.com/contest/1004/problem/B B. Sonya and Exhibition time limit per test 1 seco ...
- Python写一个批量生成账号的函数
批量生成账户信息,产生的账户由@sina.com结尾,长度由用户输入,产生多少条也由用户输入,用户名不能重复,用户名必须由大写字母.小写字母和数字组成. def Users(num,len): # n ...
- HDU 6038 17多校1 Function(找循环节/环)
Problem Description You are given a permutation a from 0 to n−1 and a permutation b from 0 to m−1. D ...
- logging 模块 五星知识
logging 是用来记录日志的,有下面5种模式,它和print功能一样,只不过,print不能控制自己打印的内容,而logging可以控制,你想打印什么东西. logging 有两种形式: 第一种: ...
- 2.7 多窗口、句柄(handle)
2.7 多窗口.句柄(handle) 前言 有些页面的链接打开后,会重新打开一个窗口,对于这种情况,想在新页面上操作,就得先切换窗口了.获取窗口的唯一标识用句柄表示,所以只需要切换句柄,我们就能在 ...