Centos7 Build LNMP Server

1、安装Nginx >

2、安装PHP

3、安装Mariadb

4、安装phpMyAdmin

一、CentOS7默认是无法找不到Nginx包的,这个时候可以通过一下操作来安装按照Nginx官网上的描述,可以在/etc/yum.repos.d/创建个nginx.repo源

1
2
# touch /etc/yum.repos.d/nginx.repo
# vi /etc/yum.repos.d/nginx.repo

然后把这一段写到nginx.repo源里面

1
2
3
4
5
6
7
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/OS/OSRELEASE/$basearch/
gpgcheck=0
enabled=1
接着保存
:wq!
1
2
3
4
5
      baseurl=http://nginx.org/packages/mainline/OS/OSRELEASE/$basearch/中的/OS/OSRELEASE需替换成当前的系统和版本,例如Centos7,那么OS需要改成centos,OSRELEASE需要改成7即可

接着就可以直接安装Nginx了

# yum -y install nginx

还有另一种方法就是安装epel源来达到安装nginx的目的

1
2
# sudo yum -y install epel-release
# sudo yum install nginx

二、Centos7下载并安装PHP

1
2
3
#yum -y install epel-release
#rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
#yum install php71w php71w-common php71w-fpm php71w-opcache php71w-mysqlnd php71w-gd php71w-mbstring

三、下载并安装Mariadb

1
#yum -y install mariadb*  //之所有要用*是怕yum下来后的mariadb出现依赖的文件不全的情况。

四、安装与配置phpMyAdmin

可以直接通过yum来安装phpMyAdmin,也可以通过它的官网下载下来,然后解压到web目录

首先先安装下unzip,因为phpMyAdmin压缩包的后缀是zip的,所以需要安装unzip来解压

1
#yum -y install unzip

然后需要安装wget(如果安装过了,这个步骤可以跳过),wget用来在linux下下载phpMyAdmin压缩包

1
#yum -y install wgtet

接着把包拷贝到web目录下,比如说,我有一个网站是放在 /www/test 这里,那么就要把phpMyAdmin的压缩包拷贝到test文件夹里面,然后解压!

1
2
3
#cp phpMyAdmin.zip /www/test
#cd /www/test
#unzip phpMyAdmin.zip

然后在浏览器里面输入 192.168.1.210/phpMyAdmin 进行测试看phpMyAdmin是否安装成功!192.168.1.210

是web网站的地址,/phpMyAdmin 是phpMyAdmin所在的目录

如果成功登陆的话,会显示一个登陆界面,这里登陆是使用系统登陆账号和密码登陆的,例如我的系统登录账号密码是root 123456

phpMyAdmin就是用这个登陆,记住要先启动数据库服务,不然登入不进去会报错!

1
2
3
#systemctl restart mariadb
或者
#service mariadb start

1

登陆成功后创建数据库

2
3
4

数据库创建完后网站就可以与数据库连接了,连接的数据库地址和端口是localhost:3306账户密码就是root123456或者是自己新建的账户。记得启动Nginx、PHP、Mariadb。

1
2
3
4
5
6
7
#systemctl restart nginx
#systemctl restart php-fpm
#systemctl restart mariadb
或者
#service nginx start
#service php-fpm start
#service mariadb start

为了一劳永逸,不想每次开机都手动启动这三个服务的话,可以把这三个服务添加到开机启动里面

1
2
3
#systemctl enable nginx
#systemctl enable php-fpm
#systemctl enable mariadb

###将80和8080还有3306端口添加到防火墙里,允许通过

1
2
3
4
5
6
#firewall-cmd --permanent --add-port=80/tcp
#firewall-cmd --permanent --add-port=80/udp
#firewall-cmd --permanent --add-port=8080/tcp
#firewall-cmd --permanent --add-port=8080/udp
#firewall-cmd --permanent --add-port=3306/tcp
#firewall-cmd --permanent --add-port=3306/udp

###然后重载下firewalld就可以了

1
firewall-cmd --reload

###查看下当前允许的端口

1
firewall-cmd --list-all

五、对Nginx进行配置

nginx、php、Mariadb 、phpMyAdmin安装好后,我们需要配置nginx.conf文件

要先关闭SELinux

1
#vi /etc/selinux/config

然后把 SELINUX=enforcing

改为 SELINUX=disabled

接着开始编辑nginx.conf配置文件

1
#vi /etc/nginx/nginx.conf

然后开始配置,以下是配置内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
user  nobody;
worker_processes 1;

error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;


events {
worker_connections 1024;
}


http {
include /etc/nginx/mime.types;
default_type application/octet-stream;

log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

access_log /var/log/nginx/access.log main;

sendfile on;
#tcp_nopush on;

keepalive_timeout 65;

#gzip on;

server {
listen 80;
server_name 192.168.1.210;

#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;

location / {
root /www/iwebshop;
index index.php index.html index.htm;
}


#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}

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

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

# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}

include /etc/nginx/conf.d/*.conf;
}

刚开始配置的时候遇到了点问题,location ~ .php$ 没配置和没配置好,默认是

1
fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

这个时候启动的话,访问网站会提示file not found

我们需要把它改为

1
fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

然后

1
2
location ~ \.php$ {
root /www/iwebshop;

root需要改成网站文件的目录

配置好后保存

1
:wq!
1
$ hexo server

六、PHP配置

其实PHP下载安装好后不需要设置啥,直接启动就行了

1
systemctl start php-fpm

七、Mariadb配置

安装Mariadb数据库

1
#yum -y install mariadb*

一定要用通配符*,不然可能有些依赖组件不会下载,会导致mariadb开不起来

开始进行mariadb初始化配置

1
# mysql_secure_installation

首先是设置密码,会提示先输入密码

1
Enter current password for root (enter for none):<–初次运行直接回车

设置密码

1
2
3
Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车
New password: <– 设置root用户的密码
Re-enter new password: <– 再输入一次你设置的密码

其他配置

1
2
3
4
Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车
Disallow root login remotely? [Y/n] <–是否禁止root远程登录,否,
Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车
Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车

初始化MariaDB完成,接下来测试登录

1
mysql -uroot -p [回车,之后输入密码]

开启mariadb服务:

1
#ystemctl start mariadb

配置允许远程连接Mariadb

1
#mysql -u root -p

查看用户表:

1
#select * from mysql.user\G

添加远程访问用户:

1
grant all on *.* to 'root'@'%' identified by '123456'

设置添加用户的授权权限:

1
update mysql.user set Grant_priv='Y' where Host='%'

移除匿名用户:

1
delete from mysql.user where Host<>'%' or User<>'root'

退出mariadb命令行:

1
#quit

重启mariadb:

1
#systemctl restart mariadb

关注我的公众号吧~戴戴的Linux

文章目录
  1. 1. 1、安装Nginx >
  2. 2. 2、安装PHP
  3. 3. 3、安装Mariadb
  4. 4. 4、安装phpMyAdmin
    1. 4.1. 一、CentOS7默认是无法找不到Nginx包的,这个时候可以通过一下操作来安装按照Nginx官网上的描述,可以在/etc/yum.repos.d/创建个nginx.repo源
      1. 4.1.1. 然后把这一段写到nginx.repo源里面
      2. 4.1.2. 还有另一种方法就是安装epel源来达到安装nginx的目的
    2. 4.2. 二、Centos7下载并安装PHP
    3. 4.3. 三、下载并安装Mariadb
    4. 4.4. 四、安装与配置phpMyAdmin
      1. 4.4.1. 可以直接通过yum来安装phpMyAdmin,也可以通过它的官网下载下来,然后解压到web目录
      2. 4.4.2. 首先先安装下unzip,因为phpMyAdmin压缩包的后缀是zip的,所以需要安装unzip来解压
      3. 4.4.3. 然后需要安装wget(如果安装过了,这个步骤可以跳过),wget用来在linux下下载phpMyAdmin压缩包
      4. 4.4.4. 接着把包拷贝到web目录下,比如说,我有一个网站是放在 /www/test 这里,那么就要把phpMyAdmin的压缩包拷贝到test文件夹里面,然后解压!
      5. 4.4.5. 然后在浏览器里面输入 192.168.1.210/phpMyAdmin 进行测试看phpMyAdmin是否安装成功!192.168.1.210
      6. 4.4.6. 是web网站的地址,/phpMyAdmin 是phpMyAdmin所在的目录
      7. 4.4.7. 如果成功登陆的话,会显示一个登陆界面,这里登陆是使用系统登陆账号和密码登陆的,例如我的系统登录账号密码是root 123456
      8. 4.4.8. phpMyAdmin就是用这个登陆,记住要先启动数据库服务,不然登入不进去会报错!
      9. 4.4.9. 登陆成功后创建数据库
      10. 4.4.10. 数据库创建完后网站就可以与数据库连接了,连接的数据库地址和端口是localhost:3306账户密码就是root123456或者是自己新建的账户。记得启动Nginx、PHP、Mariadb。
      11. 4.4.11. 为了一劳永逸,不想每次开机都手动启动这三个服务的话,可以把这三个服务添加到开机启动里面
    5. 4.5. 五、对Nginx进行配置
      1. 4.5.1. nginx、php、Mariadb 、phpMyAdmin安装好后,我们需要配置nginx.conf文件
      2. 4.5.2. 然后把 SELINUX=enforcing
      3. 4.5.3. 改为 SELINUX=disabled
      4. 4.5.4. 接着开始编辑nginx.conf配置文件
      5. 4.5.5. 然后开始配置,以下是配置内容
      6. 4.5.6. 刚开始配置的时候遇到了点问题,location ~ .php$ 没配置和没配置好,默认是
      7. 4.5.7. 这个时候启动的话,访问网站会提示file not found
      8. 4.5.8. 我们需要把它改为
      9. 4.5.9. 然后
      10. 4.5.10. root需要改成网站文件的目录
      11. 4.5.11. 配置好后保存
    6. 4.6. 六、PHP配置
      1. 4.6.1. 其实PHP下载安装好后不需要设置啥,直接启动就行了
    7. 4.7. 七、Mariadb配置
      1. 4.7.1. 安装Mariadb数据库
      2. 4.7.2. 一定要用通配符*,不然可能有些依赖组件不会下载,会导致mariadb开不起来
      3. 4.7.3. 开始进行mariadb初始化配置
      4. 4.7.4. 首先是设置密码,会提示先输入密码
      5. 4.7.5. 设置密码
      6. 4.7.6. 其他配置
      7. 4.7.7. 初始化MariaDB完成,接下来测试登录
      8. 4.7.8. 开启mariadb服务:
      9. 4.7.9. 配置允许远程连接Mariadb
      10. 4.7.10. 查看用户表:
      11. 4.7.11. 添加远程访问用户:
      12. 4.7.12. 设置添加用户的授权权限:
      13. 4.7.13. 移除匿名用户:
      14. 4.7.14. 退出mariadb命令行:
      15. 4.7.15. 重启mariadb:


本站总访问量 本文总阅读量