### Shopify app开发服务器说明
开发shopify app 我们需要有一个可以对外访问的服务器,当然,你也可以使用花生壳等软件做内网穿透。要求只有一个,你写的接口可以被shopify的服务器访问到。
<br>
**提示:**
如果大家没有线上服务器,想要本地开发,参考章节:"内网穿透-ngrok" ,讲解如何结合ngrok与phpstudy本地开发shopify应用。
<br>
### 创建thinkphp项目
在服务器的web根目录下创建一个shopify的目录 spf:
```asp
/var/www/html/spf
```
#### 初始化thinkphp项目
**1.选择ThinkPHP版本**
查看php版本:
```asp
[root@153 /var/www/html/spf]# php -v
PHP 7.2.0 (cli) (built: Aug 5 2020 03:06:36) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2017 Zend Technologies
```
访问php官网:[thinkphp.cn](http://thinkphp.cn)
THINKPHP最新版本6.0提示要求php版本最低为7.2.5
![](https://img.kancloud.cn/6b/59/6b597610c686c30bf59a7f091ba919fc_876x328.png =1000x)
看来我们的服务器环境不符合ThinkPHP6版本的要求。
我们再来看一下ThinkPHP5.1对于php版本的要求:
![](https://img.kancloud.cn/9a/dd/9add45a64a9238b9d3295422a1c5e913_1102x379.png =1000x)
为了方便开发,我们这里就不再去折腾服务器的php环境,就选择安装ThinkPHP5.1版本。
**2.安装ThinkPHP**
根据手册的安装提示,我们执行composer命令安装:
```asp
composer create-project topthink/think=5.1.* myapp
```
项目创建完后,查看项目目录:
```asp
[root@153 /var/www/html/spf/myapp]# ls -l
合計 96
-rw-r--r-- 1 root root 36799 1月 11 11:58 2021 CHANGELOG.md
-rw-r--r-- 1 root root 1822 1月 11 11:58 2021 LICENSE.txt
-rw-r--r-- 1 root root 6772 1月 11 11:58 2021 README.md
drwxr-xr-x 3 root root 4096 1月 11 11:58 2021 application
-rw-r--r-- 1 root root 1070 1月 11 11:58 2021 build.php
-rw-r--r-- 1 root root 660 1月 11 11:58 2021 composer.json
-rw-r--r-- 1 root root 3870 6月 4 01:43 2023 composer.lock
drwxr-xr-x 2 root root 4096 1月 11 11:58 2021 config
drwxr-xr-x 2 root root 4096 1月 11 11:58 2021 extend
drwxr-xr-x 3 root root 4096 1月 11 11:58 2021 public
drwxr-xr-x 2 root root 4096 1月 11 11:58 2021 route
drwxr-xr-x 2 root root 4096 1月 11 11:58 2021 runtime
-rw-r--r-- 1 root root 823 1月 11 11:58 2021 think
drwxr-xr-x 5 root root 4096 6月 4 01:43 2023 thinkphp
drwxr-xr-x 4 root root 4096 6月 4 01:43 2023 vendor
```
安装成功.
访问我们安装的thinkphp项目:[http://ip](http://ip):port/spf/myapp/public/
![](https://img.kancloud.cn/ff/08/ff083513941f0d3a15928af880773569_1270x641.png =1000x)
### Windows编辑服务器文件
vscode安装SFTP插件:
![](https://img.kancloud.cn/2c/57/2c57304ba1228b8b045408986fa8a0a1_898x436.png =1000x)
打开vscode的命令控制台,输入 sftp:
![](https://img.kancloud.cn/3c/0a/3c0a5ec6d65f56dd9baaa605fbd1e6e0_1019x527.png =1000x)
配置服务器连接信息:
```asp
{
"name": "shopify",
"host": "153.126.161.135",
"protocol": "sftp",
"port": 22,
"username": "root",
"password":"98fX32x34eI+1",
"remotePath": "/var/www/html/spf/myapp",
"uploadOnSave": true
}
```
右键项目目录,Download.
![](https://img.kancloud.cn/d9/89/d98982c19715cf14a957d65cd9a487a7_602x678.png =1000x)
等待代码下载好之后,我们就能在Windows电脑上看到所有服务器的文件:
![](https://img.kancloud.cn/f5/8b/f58b11360e2ac3bc443f3f38d7f783a2_410x315.png =1000x)
### 测试
我们编辑一下默认的首页控制器的index方法:
application\\index\\controller\\Index.php
```asp
<?php
namespace app\index\controller;
class Index
{
public function index()
{
return 'hello shopify';
}
public function hello($name = 'ThinkPHP5')
{
return 'hello,' . $name;
}
}
```
访问url测试:
![](https://img.kancloud.cn/71/c1/71c15ad5d061cc7050ace6dfaa9599e0_710x218.png =1000x)
这样我们就可能通过使用FTP的方式,在Windows环境下,编辑Linux服务器的文件了。
> 注意:
> 前面配置SFTP插件的这一项:"uploadOnSave": true,表示每次编辑完文件保存后,将自动上传到服务器,不用手动上传。
### 小结:
本小节我们安装了ThinkPHP框架,并配置好了vscode如何去编辑服务器文件。这样我们在开发shopify的前期准备功能就基本完成,后面我们将会基于这个项目去实现与shopify的接口进行通信、交互等。
在开发shopify应用时,并不要求服务端一定是这个架构,你可以选择任何一门后端开发语言,只要可以提供web可访问的能力即可。
我们这里方便大家学习,选择最易上手的ThinkPHP做为后端框架,本质上我们要学习的并非PHP框架怎么用,而是学习怎么与shopify开发进行数据交互。
- Shopify系统简介
- Shopify帐号注册与开店
- app与主题开发介绍
- app开发介绍
- 商店初始化与设置
- 服务器项目初始化
- 创建app及设置
- OAuth授权介绍
- App实现OAuth功能(上)
- App实现OAuth功能(下)
- Shopify API介绍
- 应用访问范围scopes详解
- Access Token保存(上)
- Access Token保存(下)
- App授权流程完善
- App开发思路
- App计费模式介绍
- app实战-首页排版
- app实战-展示商品列表(一)
- app实战-展示商品列表(二)
- app实战-修改商品
- Shopify中的API总结
- 内网穿透-ngrok
- app实战-付费功能
- Webhooks介绍
- app实战-Webhook实现app卸载(一)
- app实战-Webhook实现app卸载(二)
- app发布流程
- 项目完整代码
- 结语:Shopify App开发赚钱攻略