基于LNMP的简单电商网站架构

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于LNMP的简单电商网站架构相关的知识,希望对你有一定的参考价值。

一:实验环境

centos 7 实验机

chrome 浏览器

二:实验步骤

※注意事项

实验前,查看80端口是否被httpd服务占用,如打开,则关闭httpd服务,确保80端口未开启

1.安装必要软件

yum install mariadb mariadb-server php-fpm php php-mysql

2.下载网站源代码,解压到/data/web/下,并修改目录下所有文件的属主和属组为nobody

unzip -d /data/web/ xiaomi.zip

chown -R nobody.nobody /data/web/* 

3.修改php-fpm运行用户和组为nobody,确保安全性

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

    user = nobody

    group = nobody

4.修改nginx配置文件 && 重启nginx服务

①vim /etc/nginx/nginx.conf

     user  nobody;    #全局配置

     error_log  /var/log/nginx/error.log;  ##错误日志文件

     http{            ##服务配置

     log_format  main  ‘$remote_addr - $remote_user [$time_local] "$request" ‘  ##日志文件格式

                      ‘$status $body_bytes_sent "$http_referer" ‘

                      ‘"$http_user_agent" "$http_x_forwarded_for"‘;

     

     server{              ##虚拟主机配置

     root   /data/web/;   ##网页文件根目录

     access_log  /var/log/nginx/host.access.log  main;   ##虚拟主机访问日志文件

     location / {

            index  index.php index.html;

        }

     location ~ \.php$ {

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.php;

            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;   

            include        fastcgi_params;

        }

     }

     }

②systemctl restart nginx
※友情提示:如服务重启失败,使用 nginx -t 来对配置文件进行排错

5.修改php配置文件 && 并修改其运行权限为nginx && 重启服务

①vim /etc/php.ini

     short_open_tag = on

     date.timezone = Asia/Shanghai

②chown nginx.nginx /etc/php.ini

②重启服务

systemctl restart php-fpm

6.创建mysql数据库xiaomi

mysql 

MariaDB [(none)]> create database xiaomi;

7.修改数据库连接文件

vim /data/web/data/config.php

     // 数据库主机 3306为默认主机端口,如不是默认也需要修改

     $db_host   = "127.0.0.1:3306";   

     // 数据库名称

     $db_name   = "xiaomi";      

     // 数据库用户名

     $db_user   = "root";

     // 数据库密码

     $db_pass   = ""; 

※常见错误:后期数据库连接失败,可将:3306删除后重试即可


8.确认mariadb、php-fpm、nginx服务已开启


到这里,环境已搭建完成,进入测试环节


9.测试环节(测试环境:浏览器)

①同步数据库

输入http://192.168.116.77/ebak/进入后台数据库管理页面,查看数据库是否连接正常( 账号:admin ,密码:123456 )

②进入主页

输入http://192.168.116.77/ 进入主页面

③进入商店后台管理系统

输入http://192.168.116.77/admin 修改管理订单、网站信息等( 账号:admin 密码:admin888 )

10.实验常见问题

注意各文件权限问题

/data/web/下所有文件为nobody.nobody

php.ini权限为nginx.nginx

/var/lib/nginx/下的所有文件为nobody.nobody(此文件权限不改,商店后台管理修改信息后会报错)

以上是关于基于LNMP的简单电商网站架构的主要内容,如果未能解决你的问题,请参考以下文章

基于LVS负载均衡集群的小米电商网站架构-运维实战手记

企业实战-实现基于LVS负载均衡集群的电商网站架构

电商平台 lnmp 架构之 mysql 优化

电商平台 lnmp 架构之 mysql 优化

电商平台 lnmp 架构之 nginx+tomcat

电商平台 lnmp 架构之 nginx+tomcat