我从来没有做过后端上传,这就是为什么我问。
因此,我在文件夹 “Pro” 中构建了我的项目,其中一个文件夹名为 “Web”,包含React.js
应用程序,另一个文件夹名为 “Server”,包含有关服务器和数据库的所有信息,这些信息是用Node.js
编写的。我已经实现了在本地运行此项目,但我不知道如何将其上传到网上。关于 “Web” -我可以轻松地做到这一点,只需运行npm run-script build
,我就可以上传并构建文件夹到FTP面板。
第一个问题:
服务器端呢?我应该怎么上传它?还有,买运行npm run-script build
并把它放在同一个文件夹在线?它会创建两个文件和文件夹同名?
第二个问题:
在本地,我连接到MySQL,如下所示:
const app = express()
const port = process.env.PORT || 5000
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())
app.use(cors())
// MySQL
const pool = mysql.createPool({
connectionLimit: 10,
user: "root",
host: 'localhost,
password: "",
database: "mydatabase"
})
我应该在里面做些什么改变,这样它才能在线工作?我的在线数据库名称是 “database.myqsl”,我应该在它前面加上 http:// 吗?我真的什么都不知道。我使用 DreamHost 与 PHPMyAdmin 和 MySQL。
1条答案
按热度按时间2fjabf4q1#
如果任何人有同样的问题,这里是解决方案:你不需要额外的服务,
DreamHost
可以处理Node.js
。调用API你需要额外的域,它可以是你网站的子域。在DreamHost上创建子域后,进入Manage Domains
-〉"Edit" under the Web Hosting Column
-〉under the Web Options chek both "Passenger" and "Node.js"
并保存它。你不需要npm run-script build
任何东西,无论如何它都不会工作。然后将运行Node.js的文件夹中的所有文件上传到/public
文件夹的FTPoutside中。然后,在前端这样调用您的API:Axios.get('https://server.yourdomain.com/login')
或任何你使用的API调用,它都能很好地工作。还要确保你的前端和后端域都是https secure
。文章为您提供帮助:
https://help.dreamhost.com/hc/en-us/articles/216635318-How-to-enable-Node-js
另外,我的app.js的SQL连接如下所示: