Nginx 笔记与总结(11)Nginx + php-fpm + MySQL 安装 ecshop
下载 ecshop (ECShop_V2.7.3_UTF8_release1106)安装包,解压之后把 upload 文件夹使用 ftp 传到服务器的 /usr/local/html 目录下,同时改名为 ecshop,在浏览器访问 http://192.168.254.100/ecshop/install/index.php,如果显示:ect() failed (111: Connection refused) while connecting to upstream,则说明没有启动 php-fpm,使用以下命令启动 php-fpm:
[root@localhost nginx]# /usr/local/fastphp/sbin/php-fpm
fastphp 是安装 php 的目录。
如果需要只访问 http://192.168.254.100/ecshop/install ,则需要修改 nginx.conf:
[root@localhost nginx]# vim conf/nginx.conf
在 location / { index } 中添加 index.php:
location / {root html;index index.php index.html index.htm;}
平滑重启 nginx。
此时访问 http://192.168.254.100/ecshop/install:
下一步,修改不可写的目录权限:
"+" 表示增加权限. "-" 表示消减权限。
文件所有者可以用字母 u 表示,用户所在的组可以用字母 g 来表示,其他人可以用字母 o 来表示,所有人可以用字母 a 了表示。
目录权限:
[root@localhost ecshop]# chmod o+w cert -R
[root@localhost ecshop]# chmod o+w images -R
[root@localhost ecshop]# chmod o+w data -R
[root@localhost ecshop]# chmod o+w temp -R
模板权限:
[root@localhost ecshop]# chmod o+w themes -R
此时再刷新页面:
下一步。
如果出现连接数据库失败(用户名:root,密码:123456):
原因是:
在 Linux 下,用 localhost 进行连接的时候,不是通过 TCP 协议来连接,而是通过套接字 socket 来连接的,而在 phpinfo 中可以看到,并没有指定 socket:
解决方案 1:
把 localhost 改为 127.0.0.1
解决方案 2:
找到 mysql.sock
[root@localhost ecshop]# ps ax|grep mysql1262 ? S 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/mysql.pid1573 ? Sl 0:07 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/error.log --pid-file=/usr/local/mysql/data/mysql.pid --socket=/data/mysql/mysql.sock --port=33063772 pts/0 S+ 0:00 grep mysql
或者
[root@localhost ecshop]# vim /etc/my.cnf[client]
#password = your_password
port = 3306
socket = /data/mysql/mysql.sock# Here follows entries for some specific programs# The MySQL server
[mysqld]
port = 3306
socket = /data/mysql/mysql.sock
或者
[root@localhost ecshop]# find / -name mysql.sock
/data/mysql/mysql.sock
mysql.sock 的路径在 /data/mysql/mysql/sock
指定 socket。
[root@localhost ecshop]# vim /usr/local/fastphp/lib/php.ini
php.ini:
找到 mysql.default_socket,指定为:
mysql.default_socket = /data/mysql/mysql.sock
保存退出。
杀 php-fpm 进程:
[root@localhost ecshop]# pkill -9 php-fpm
启动 php-fpm:
[root@localhost ecshop]# /usr/local/fastphp/sbin/php-fpm
(不过这个问题到现在都还没有解决,使用 localhost 无法连接到数据库,使用 php 进行检测:
<?
var_dump(mysql_connect('localhost','root','123456'));
显示:
Warning: mysql_connect() [function.mysql-connect]: [2002] Permission denied (trying to connect via unix:///data/mysql/mysql.sock) in /usr/local/nginx/html/test.php on line 3Warning: mysql_connect() [function.mysql-connect]: Permission denied in /usr/local/nginx/html/test.php on line 3
bool(false)
)
使用 127.0.0.1 连接数据库,继续。
设置数据库名为:shop
管理员姓名:admin
登录密码:admin123
电子邮箱:472323087@qq.com
设置时区:中华人民共和国
安装测试数据
立即安装。
报错:
原因:时区配置错误。
解决方案,配置 php.ini:
[root@localhost mysql]# vim /usr/local/fastphp/lib/php.ini
找到 date.timezone,去掉注释,并且设置 date.timezone = PRC:
保存退出。
杀进程 php-fpm 并启动 php-fpm:
[root@localhost mysql]# pkill -9 php-fpm
[root@localhost mysql]# /usr/local/fastphp/sbin/php-fpm
立即安装。
安装成功。
参考:
《Linux的chmod命令》
《修改了mysql.sock的位置,如何在程序连接时指定修改后的mysql.sock》
Nginx 笔记与总结(11)Nginx + php-fpm + MySQL 安装 ecshop相关推荐
- 12.10 Nginx访问日志 12.11 Nginx日志切割 12.12 静态文件不记录日志和过期时间
- 12.10 Nginx访问日志 - 12.11 Nginx日志切割 - 12.12 静态文件不记录日志和过期时间# 12.10 Nginx访问日志 - 日志的格式- vim /usr/local/ ...
- 6月8日任务(12.10 Nginx访问日志 12.11 Nginx日志切割 12.12 静态文件)
课程名称:12.10 Nginx访问日志 笔记内容: [root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf 定义日志格式 combined_ ...
- Nginx笔记总结十六:nginx优化指南
1.高层的配置 worker_processes 定义了nginx对外提供web服务时的worker进程数 worker_rlimit_nofile 更改worker进程最大打开文件数量限制,如果没有 ...
- 《SQL高级应用和数据仓库基础(MySQL版)》学习笔记 ·001【数据库基本概念、MySQL安装与介绍】
文章目录 一.数据库基本概念 1.DB与DBMS 2.数据库系统的构成 3.数据管理发展过程 4.数据库 5.关系型数据库 二.MySQL安装与卸载 三.与MySQL相关的常用命令 四.MySQL相关 ...
- Nginx笔记系列(1)——Nignx的安装部署
2019独角兽企业重金招聘Python工程师标准>>> Nginx百科 服务器(软件)你能一口气说出几个?从当年"蹒跚学步"学java时开始用 Tomcat,到& ...
- Linux实战教学笔记37:企业级Nginx Web服务优化实战(上)
一,Nginx基本安全优化 1.1 调整参数隐藏Nginx软件版本号信息 一般来说,软件的漏洞都和版本有关,这个很像汽车的缺陷,同一批次的要有问题就都有问题,别的批次可能就都是好的.因此,我们应尽量隐 ...
- Nginx 笔记与总结(3)配置虚拟主机
Nginx 重启的另外一种方式,相当于 kill -HUP `cat /usr/local/nginx/logs/nginx.pid`: /usr/local/nginx/sbin/nginx -s ...
- Diango博客--11.Nginx + Gunicorn + Supervisor 方式部署
文章目录 0.部署前准备 1.创建一个超级用户 2.更新 SQLite3 3.安装 Python3 .pip3.6以及 Pipenv 4.部署代码 5.使用 Gunicorn 6.启动 Nginx 服 ...
- 阿里云部署Django项目(nginx+uWSGI)-2018.11
前言:部署的前提是你的项目已经在本地完成可以运行了,我的本地环境是ubuntu16.04+python3.5+Django2.1.2+Mysql,在python虚拟环境(virtualenv)下建的项 ...
最新文章
- 检测到目标URL存在http host头攻击漏洞
- halcon python 联合开发_使用pythonnet调用halcon脚本
- LAMP架构之个人博客搭建
- java自学方法_JAVA自学 方法
- 【转】介绍设置Session失效的几种方法
- ios之Xcode工程中添加文件常用快捷键
- php试卷A高质量含答案,php试卷A高质量含答案
- 计算机达人成长之路 目录
- 关于MongoDB的几个问题
- 批量查询手机号归属地
- kindle看pdf乱码_kindle阅读pdf中文乱码解决
- 美国大学计算机科学分支,美国大学计算机专业四大分支介绍
- TTime::FormatL详解
- HBuilder快捷键整理集合
- 社区人物志|缪翎:见证开源世界的女性力量
- 奈奎斯特与香农定理_这样解释奈奎斯特定理和香农定理,初学者也能明白
- 「GoTeam 招聘时间」梦映动漫 Golang 开发工程师/高级经理(广州)
- php中的乐观锁和悲观锁
- win10 UWP Controls by function
- 观echat的一个例子后有感
热门文章
- python openstack rabbitmq_OpenStack--Rabbitmq组件消息队列
- 廖雪峰说python_廖雪峰官网Python部分的疑问及解决
- vue mui html不解析,记下Vue中使用Mui.js踩到的坑
- 加减乘除html代码vb,VB做加减乘除的代码是什么啊? 或者是怎么做加减乘除 ?...
- python字典基础知识点
- 2017年游戏营收报告公布,谁是去年最大的赢家?
- Kubernetes的Device Plugin机制源码解析
- 数据结构之二分插入排序------java实现
- 基于mindspore的口罩检测训练与在线推理
- Java学习小程序(7)九九乘法表