centos7安装Lnmp(Linux+Nginx+MySql+Php)及Apache

 

Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx是一个高性能的HTTP和反向代理服务器,Nginx 超越 Apache 的高性能和稳定性,使得国内使用 Nginx 作为 Web 服务器的网站也越来越多,

我们学习PHP,以及搭建我们自己的LNMP环境,不妨先在本机上尝试学习,下面我们一步一步来完成在CentOS7 下安装LNMP(Linux+Nginx+MySQL+PHP)及Apache。

查看已经开放的端口
firewall-cmd --list-ports
查看开放的服务
firewall-cmd --list-services

开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent

firewall-cmd --zone=public --add-port=3306/tcp --permanent

firewall-cmd --zone=public --add-port=8080/tcp --permanent
命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
重启防火墙
firewall-cmd --reload #重启firewall
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

关闭SELINUX
vi /etc/selinux/config
注释掉如下两句,添加最后一项
\#SELINUX=enforcing #注释掉
\#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
:wq! 保存退出
输入如下命令
setenforce 0 #使配置立即生效

getenforce  查看

sestatus

setenforce 0

yum安装 程序过程中 出现占用yum情况:

rm -f /var/run/yum.pid

一、安装httpd

sudo su -

yum install -y httpd

二、启动httpd服务

安装完成之后使用以下命令启动httpd服务:

#启动apache

systemctl start httpd.service

#设置apache开机启动

systemctl enable httpd.service

可以在浏览器中输入服务器所在的主机的IP即可看到apache的欢迎界面。

要在另外一台主机上实现这种访问,需要关闭系统的防火墙。

在CentOS7中只能使用以下命令,如果使用上面的命令并不会报任何错误,但是起不到关闭防火墙的效果:

systemctl stop firewalld.service 

//禁止防火墙开机启动

systemctl disable firewalld.service 

防火墙开放端口和服务

firewall-cmd --add-service=http --permanent --zone=public 

firewall-cmd --reload

firewall-cmd --list-all

三、安装MySql数据库

MySQL数据库,新版本已经更名为Mariadb,所以这里需要安装Mariadb,可以使用下面的命令进行安装:

 yum install -y mariadb mariadb-server

四、开启数据库服务

1、安装完成以后使用下面的命令开启数据库服务:
#启动MariaDB

systemctl start mariadb.service

#重启MariaDB

systemctl restart mariadb.service

#设置开机启动

systemctl enable mariadb.service  

2、配置MariaDB的字符集

vim /etc/my.cnf.d/server.cnf

在[mysqld]标签下添加
init_connect='SET collation_connection = utf8_unicode_ci' 
init_connect='SET NAMES utf8' 
character-set-server=utf8 
collation-server=utf8_unicode_ci 
skip-character-set-client-handshake

文件/etc/my.cnf.d/client.cnf
vi /etc/my.cnf.d/client.cnf

在[client]中添加
default-character-set=utf8
文件/etc/my.cnf.d/mysql-clients.cnf
vi /etc/my.cnf.d/mysql-clients.cnf
在[mysql]中添加
default-character-set=utf8
 全部配置完成,重启mariadb
systemctl restart mariadb
之后进入MariaDB查看字符集

mysql -uroot -p 回车

mysql> show variables like "%character%";show variables like "%collation%";
字符集配置完成。

3、添加用户,设置权限
创建用户命令
mysql>create user username@localhost identified by 'password';
直接创建用户并授权的命令
mysql>grant all on *.* to username@localhost identified by 'password';
授予外网登陆权限 
mysql>grant all privileges on *.* to username@'%' identified by 'password';
授予权限并且可以授权
mysql>grant all privileges on *.* to username@'hostname' identified by 'password' with grant option;

简单的用户和权限配置基本就这样了。
其中只授予部分权限把 其中 all privileges或者all改为select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file其中一部分。
设置root账户密码
mysql_secure_installation
然后一路输入y就可以。
设置root密码后,重启MariaDB生效
systemctl restart mariadb.service
测试访问数据库:
mysql -uroot -p
show databases;
退命令:
exit;

五、安装PHP

 yum -y install php 

使用下面的命令安装php对Mariadb的支持:
yum install php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash

一路“Y”

php --version

五、重启Mariadb和httpd服务:

使用下面的命令重启Mariadb和httpd服务:

#重启MariaDB

systemctl restart mariadb.service 

#重启apache

systemctl restart httpd.service 

vim /var/www/html/index.php ->内容:<?php phpinfo();  ?>

六、安装nginx

想在 CentOS 系统上安装 Nginx ,你得先去添加一个资源库,像这样:

vim /etc/yum.repos.d/nginx.repo 

使用 vim 命令去打开 /etc/yum.repos.d/nginx.repo ,如果 nginx.repo 不存在,就会去创建一个这样的文件,打开以后按一下小 i 键,进入编辑模式,然后复制粘贴下面这几行代码,完成以后按 esc 键退出,再输入 :wq (保存并退出)

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

完成以后,我们就可以使用 yum 命令去安装 nginx 了,像这样:

yum -y install nginx
由于安装了Httpd服务,所以要先停止,关闭apache之后再次启动nginx。

停止Httpd

systemctl stop httpd.service 

测试一下 nginx 服务:

systemctl status httpd.service

测试一下 nginx 的配置文件:

nginx -t   

返回

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

说明配置文件成功!

开启服务:systemctl start nginx.service

开机启动:systemctl enable nginx.service

七、配置服务

这里使用的是nginx做反向代理,将其客户端通过80端口请求的.php内容代理到apache服务器上。

要想使用nginx做反向代理,需要修改Apache的httpd和nginx的配置文件,使其监听不同的端口,这里我们使用nginx监听80端口,

使用Apache监听8080端口,这里我们分别配置Apache和nginx的配置文件,修改结果如下:

(1)Apache配置文件:/etc/httpd/conf/httpd.conf

#Listen 12.34.56.78:80
Listen 8080

(2)nginx配置如下:/etc/nginx/conf.d/default.conf

 # proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
location ~ \.php$ {
proxy_pass http://127.0.0.1:8080;
}

(3)不指定8080端口访问nginx服务器:

http://localhost

(4)指定8080端口访问apache服务器:

http://localhost:8080

(5)指定8080端口访问apache服务器下的mysql->mariadb

http://locahost:8080/phpmyadmin

参考:http://www.kimsom.com/article/138

http://www.jb51.net/article/68026.htm

添加nginx服务:

http://www.cnblogs.com/riverdubu/p/6426852.html

centos7安装Lnmp(Linux+Nginx+MySql+Php+phpMyAdmin+Apache)的更多相关文章

  1. centos6服务器YUM安装LNMP(LINUX+NGINX+MYSQL+PHP)

    之前都用的lamp,这次配置一个lnmp来看看,试试Nginx是不是好用 关闭SELINUXvi /etc/selinux/config#SELINUX=enforcing #注释掉#SELINUXT ...

  2. 安装lnmp(linux nginx mysql php)

    下载或者在云盘里找lnmp1.2-full.tar.gz 用 tar -zxvf lnmp1.2-full.tar.gz解压 进入 ,运行./install.sh安装.根据提示. 如果出现yum锁定, ...

  3. centos 6.5 安装lnmp(linux+nginx+mysql+php)

    参考:http://www.cnblogs.com/AloneSword/archive/2013/03/18/2966750.html (总结并简要) 一安装cmake wget -c http:/ ...

  4. 阿里云Linux CentOS8.1 64位服务器安装LNMP(Linux+Nginx+MySQL+PHP)

    LNMP环境和软件版本: 名称 版本号 查询命令 Linux系统 CentOS Linux release 8.1.1911 (Core) cat /etc/redhat-release Nginx ...

  5. LNMP(linux+nginx+mysql+php)服务器环境配置【转载】

    本文转载自 园友David_Tang的博客,如有侵权请联系本人及时删除,原文地址: http://www.cnblogs.com/mchina/archive/2012/05/17/2507102.h ...

  6. LNMP(linux+nginx+mysql+php)服务器环境配置

    一.简介 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为 “engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服 ...

  7. centos7安装jdk+tomcat+nginx+mysql

    公司新项目要在linux下部署,搭建一下java运行环境,记录一下. 一.安装mysql 1去官网下载mysql,下载后并解压,我把mysql安装在/usr/local/mysql路径下 -linux ...

  8. 阿里云Linux CentOS8.1 64位服务器安装LNMP(Linux+Nginx+MySQL+PHP) 并发调试之Nginx配置

    搭建好LNMP环境之后,接着要考虑的就是整个系统的并发能力了. 一.Nginx的配置 Nginx有很好的并发能力.但是要想使它的并发能力能够施展出来,需要在初步安装好的Nginx上做一些配置.主要需要 ...

  9. LNMP(Linux+Nginx+MySQL+PHP)centos6.4安装

    nginx命令 停止nginx服务:# /etc/init.d/nginx stop 启动nginx服务:# /etc/init.d/nginx start 编辑nginx配置文件:# vim /et ...

随机推荐

  1. 问题 H: 老管家的忠诚(线段树)

    问题 H: 老管家的忠诚 时间限制: 0 Sec  内存限制: 128 MB提交: 54  解决: 21[提交][状态][讨论版][命题人:外部导入] 题目描述         老管家是一个聪明能干的 ...

  2. Java学习——多线程例子:李四王五

    package cys; public class Example9_2 { public static void main(String[] args) { // TODO Auto-generat ...

  3. Ubuntu 16.04安装Pycharm2017.1.1

    安装pycharm 1.到官网下载安装包. 2.到下载目录下进行解压. 3.运行解压后的文件夹中的bin目录下的pycharm.sh文件. cd pycharm-community-2017.1.1/ ...

  4. [UE4]读取玩家列表

  5. php安装imagemagick扩展 常见问题与解决方案(win平台)

    1.写在前面 1-1.ImageMagick介绍 ImageMagick是一套功能强大.稳定而且开源的工具集和开发包,可以用来读.写和处理超过89种基本格式的图片文件,包括流行的TIFF.JPEG.G ...

  6. typescript可索引接口 类类型接口

    /* 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用.接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据, ...

  7. Centos7下安装Python3.7.2

    在我的Centos7中,Python默认是安装的,输入python 直接可以查看版本号,入下图 注意:如果本机安装了python2,尽量不要管它,使用python3运行python脚本就好,因为可能有 ...

  8. tf.nn.dropout

    tf.nn.dropout(x, keep_prob, noise_shape=None, seed=None, name=None) 此函数是为了防止在训练中过拟合的操作,将训练输出按一定规则进行变 ...

  9. CRM 2016 刷新 Iframe

    在CRM中刷新IFame: /// <summary>刷新Iframe的内容,用于表单上刷新iframe里的内容</summary> var iframe = Xrm.Page ...

  10. 第5章 IP地址和子网划分(4)_超网合并网段

    7. 超网合并网段 7.1 合并网段 (1)子网划分是将一个网络的主机位当网络位,来划分出多个子网.而多个网段合并成一个大网段,合并后的网段称为超网. (2)需求分析 某企业有一个网段,该网段有200 ...