React+SpringBoot項(xiàng)目部署

這篇文章是記錄一下我剛剛部署的過(guò)程...倒不是怕忘記,只是部署花了我蠻長(zhǎng)時(shí)間的,然而最后明白了之后,才發(fā)現(xiàn)超級(jí)簡(jiǎn)單...

所以寫這篇文章用來(lái)幫助那些和我一樣的小白...

首先我用create-react-app搭建了一個(gè)react項(xiàng)目(這一步操作大家可以去官網(wǎng)看https://reactjs.org/docs/add-react-to-a-new-app.html)

你會(huì)得到一個(gè)結(jié)構(gòu)如下的項(xiàng)目:

image.png

我們可以通過(guò) yarn start 運(yùn)行這個(gè)項(xiàng)目:


image.png
image.png

跑起來(lái)的頁(yè)面是這樣的:


image.png

好的,現(xiàn)在你已經(jīng)成功在開發(fā)環(huán)境中跑起來(lái)了,接下來(lái)我們來(lái)打包,然后將其部署到服務(wù)器上

打包也很簡(jiǎn)單,執(zhí)行 npm run build :

image.png

你會(huì)發(fā)現(xiàn)在你的項(xiàng)目文件夾里多了個(gè)build文件夾:

image.png
image.png

然后當(dāng)你點(diǎn)擊index.html之后,會(huì)發(fā)現(xiàn)打開是這樣的:

image.png

一片空白...然后你檢查了了下index.html,發(fā)現(xiàn)里面的路徑是這樣的:

image.png

發(fā)現(xiàn)了啥問(wèn)題沒(méi)...里面的路徑是絕對(duì)路徑,所以當(dāng)然找不到j(luò)s和css以及圖片資源啥的,那怎么讓這些路徑變成相對(duì)路徑呢,很簡(jiǎn)單...我們?cè)賞ackage.json加上homepage就行:

image.png

大家看最后一句就行...然后我們?cè)俅未虬?,然后再點(diǎn)index.html,會(huì)發(fā)現(xiàn)一切正常:


image.png

好的,現(xiàn)在我們通過(guò)build得到了html頁(yè)面以及js和css和各種資源...你也發(fā)現(xiàn)了,我們網(wǎng)頁(yè)的入口是index.html

所以比如說(shuō)你自己有個(gè)服務(wù)器地址是 www.abc.com ,你只要在訪問(wèn)www.abc.com的時(shí)候把index.html返回出去就行了...因?yàn)槲易约旱姆?wù)器是用SpringBoot搭建的,所以我就用SpringBoot來(lái)舉例子

SpringBoot返回html頁(yè)面也很簡(jiǎn)單,在resource目錄下新建一個(gè)public文件夾,然后把你React打包的build文件夾里的文件都丟進(jìn)去就行...(這里截圖是我自己的項(xiàng)目,我把一些.js和.json文件去掉了,因?yàn)楹孟駴](méi)啥用)

image.png

這個(gè)時(shí)候你訪問(wèn)www.abc.com他就會(huì)直接返回index.html了(注意在SpringBoot里的Controller去掉對(duì)"/"的攔截)

然后你只要把SpringBoot項(xiàng)目部署到服務(wù)器上(如何部署SpringBoot項(xiàng)目大家可以看這篇文章https://blog.csdn.net/ruglcc/article/details/76147645),然后訪問(wèn)你的域名,你就可以看到index.html了,比如我剛剛部署的自己的網(wǎng)頁(yè)www.nanmian.top

OK這篇文章結(jié)束了,大家也發(fā)現(xiàn)了目前的網(wǎng)頁(yè)很簡(jiǎn)單...就只有一個(gè)頁(yè)面,我剛學(xué)前端...所以也不是很懂,不知道之后項(xiàng)目變大了這種方法還行不行...到時(shí)候我會(huì)再記錄的

最后的最后,這篇文章不能再感謝我可愛(ài)的女朋友了,祝她前程似錦。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容