您现在的位置是:首页 > 教程 > ecshop商城教程ecshop商城教程
Nginx + php-fpm + MySQL环境安装ecshop
海云2025-01-20 17:53:26ecshop商城教程已有人查阅
导读下载 ecshop (ECShop_V2.7.3_UTF8_release1106)安装包,解压之后把 upload 文件夹使用 ftp 传到服务器的 /usr/local/html 目录下,同时改名为 ecshop,在浏览器访问
下载 ecshop (ECShop_V2.7.3_UTF8_release1106)安装包,解压之后把 upload 文件夹使用 ftp 传到服务器的 /usr/local/html 目录下,同时改名为 ecshop,在浏览器访问 ,如果显示:ect() failed (111: Connection refused) while connecting to upstream,则说明没有启动 php-fpm,使用以下命令启动 php-fpm:
[root@localhost nginx]# /usr/local/fastphp/sbin/php-fpm
fastphp 是安装 php 的目录。
如果需要只访问,则需要修改 nginx.conf:
[root@localhost nginx]# vim conf/nginx.conf
在 location / { index } 中添加 index.php:
此时访问 :
下一步,修改不可写的目录权限:
"+" 表示增加权限. "-" 表示消减权限。
文件所有者可以用字母 u 表示,用户所在的组可以用字母 g 来表示,其他人可以用字母 o 来表示,所有人可以用字母 a 了表示。
目录权限:
下一步。
如果出现连接数据库失败(用户名:root,密码:123456):
原因是:
在 Linux 下,用 localhost 进行连接的时候,不是通过 TCP 协议来连接,而是通过套接字 socket 来连接的,而在 phpinfo 中可以看到,并没有指定 socket:
解决方案 1:
把 localhost 改为 127.0.0.1
解决方案 2:
找到 mysql.sock
指定 socket。
[root@localhost ecshop]# vim /usr/local/fastphp/lib/php.ini
php.ini:
找到 mysql.default_socket,指定为:
杀 php-fpm 进程:
[root@localhost ecshop]# /usr/local/fastphp/sbin/php-fpm
(不过这个问题到现在都还没有解决,使用 localhost 无法连接到数据库,使用 php 进行检测:
<?
var_dump(mysql_connect('localhost','root','123456'));
显示:
设置数据库名为: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 nginx]# /usr/local/fastphp/sbin/php-fpm
fastphp 是安装 php 的目录。
如果需要只访问,则需要修改 nginx.conf:
[root@localhost nginx]# vim conf/nginx.conf
在 location / { index } 中添加 index.php:
location / {
root html;
index index.php index.html index.htm;
}
平滑重启 nginx。此时访问 :
下一步,修改不可写的目录权限:
"+" 表示增加权限. "-" 表示消减权限。
文件所有者可以用字母 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 mysql
1262 ? S 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/mysql.pid
1573 ? 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=3306
3772 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 3
Warning: 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
立即安装。
本文标签:
很赞哦! ()
相关文章
随机图文
-
ecshop调用后台指定广告位下所有广告的方法
ecshop本身的广告调用规则是:对某个广告位下的广告列表随机显示其中一条。而我们有时需要将某个广告位下的所有广告全部显示出来,那么如何处理呢,下面就自己做了一个函数: -
ecshop商品显示属性价格低价格到高价格
ECSHOP获得有规格属 的商品的销售价格范围 实现显示价格区间仿淘宝对有商品属 且属 有附加价格的商品显示为价格区间 首先请看效果截图: -
ecshop帮助中心怎么限制文章显示条数数量
有的站长的帮助中心的文章可能会很多,都显示在帮助中心里, 感觉会很乱。这里教你一个“在ECSHOP帮助中心限制文章显示条数”的方法,例如只显示每个小类的前5篇文章。 -
ecshop文件common.js自动随机输出Powered by ECShop的修改方法
解决ecshop随机出现Powered by ECShop问题, 删掉下面的代码即可解决。ecshop的common.js文件中大约在261行开始,有如下代码:
留言与评论 (共有 条评论) |