实现基于LNMP的电子商务网站

来源:互联网 发布:国内组态软件 昆船 编辑:程序博客网 时间:2024/05/29 13:44

LNMP简单介绍

LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。企业级电子商务网站大多是是基于LNMP(Linux+Nginx+MySQL+PHP)架构设计的,是目前国际上流行的网站服务端架构。LNMP架构具有轻量、跨平台、高性能等特点,能支持高并发请求。Nginx作为Web服务器,使用web服务功能,可将请求传递给PHP应用服务,PHP应用服务执行脚本,从后端Mysql取得数据,生成响应返回给Nginx,最后由Nginx将响应返回用户。

一、环境准备

centos系统、nginx源码、yum源(安装mysqlphp-fpm

  

二、安装步骤

1.下载nginx源代码,并编译安装到/usr/local/nginx目录中

2yum方式安装mariadbmariadb-serverphp-mysqlphpphp-fpm

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

3.下载小米商城源码,解压缩到/data/web目录,修改权限为nobody

mv  小米电子商务网站源码.zip xiaomi.zip

mkdir -p /data/web

unzip xiaomi.zip -d /data/web

chown -R nobody.bobody /data/web

  

三、修改配置文件

1.修改nginx配置,把/etc/nginx/nginx.conf.default模板复制为配置文件进行修改,指定网站访问目录为/data/web,并设置默认用户和配置与php-fpm交互

2.修改server段加上默认工作路径,可访问到网站程序

3.修改php扩展解析文件路径修改为

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

  

cp /etc/nginx/nginx.conf.default nginx.conf

vim /etc/nginx/nginx.conf 

user nobody;error_log /var/log/nginx/error.log info;events {worker_connections 30000;}http {include 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;tcp_nodelay on;#keepalive_timeout 0;keepalive_timeout 65;  gzip on;  server {listen 80;server_name xiaomi.magedu.con;root /data/web;location / {index index.php index.html index.htm;}location ~ \.php$ {# root html;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}}}

nginx -t 检查有没有语法错误

2、修改PHP.ini中功能配置

vim /etc/php.ini

#修改时钟配置 date.timezone = Asia/Shanghai

#可以在php.ini中设置short_open_tag = On

  

3、修改运行权限为nobody

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

user = nobody

group = nobody

  

四、连接数据库

1、创建数据库xiaomi

systemctl start mariadb

[root@centos7 nginx]# mysql

MariaDB [(none)]> create database xiaomi;

MariaDB [(none)]> show databases;

systemctl restart nginx

systemctl restart php-fpm


2、初始化数据库,为xiaomi数据库导入数据库内容

访问http://172.17.1.177/ebak/,管理员:admin 密码:123456

  

  

  

往下拉,点开始恢复

  

  

3、如果连接不到数据库,改这个文件

vim /data/web/data/config.php

  

五、测试

在浏览器访问web服务器ip,成功之后是这样的,这是前台网站

  

登录网站后台http://172.17.1.177/admin

管理员姓名:admin

管理密码:admin888

  

在网站后台可以对网站进行设置

六、问题

如果出现nginx error等错误,可以查看日志文件/var/log/nginx/error.log查找错误原因,再进行相关设置