1.我使用的是騰訊云的輕量應(yīng)用服務(wù)器,在安裝系統(tǒng)的時候可以選擇使用寶塔Linux面板。
?2.安裝了寶塔面板以后,可以在應(yīng)用管理中看到寶塔面板的登陸地址。在登錄之前需要在用戶名和密碼那一欄登錄,來獲取寶塔的用戶名和密碼。
3.進(jìn)入寶塔以后輸入用戶名和密碼即可進(jìn)入界面
?4.在左側(cè)邊欄中點擊軟件商店,部署項目所需要的環(huán)境,我這里是前端項目部署到Nginx服務(wù)器,后端使用的是Springboot,數(shù)據(jù)庫使用的是Mysql,所以只需要安裝Nginx、Mysql以及Java運行時環(huán)境,因為安裝Tomcat會自動安裝Java運行時環(huán)境,所以這里選擇安裝一個Tomcat。Mysql盡量和自己項目中使用的版本一致。
?5.安裝完成以后需要在防火墻開啟8080端口以及3306端口(Mysql使用),我這里關(guān)閉了Tomcat的服務(wù),因為我后端的項目是使用的8080端口,而Tomcat服務(wù)器啟動也是占用的8080端口,如果不關(guān)閉會導(dǎo)致后端項目失敗。
6.部署前端項目到Nginx服務(wù)器,點擊左側(cè)任務(wù)欄中的網(wǎng)站,然后選擇PHP項目,點擊添加站點,域名這里可以先用服務(wù)器IP地址,記住根目錄。前端項目打包以后放入根目錄。我這里前端項目使用的是Umi的框架,Build直接打包。
?
?7.把后端打包好的Jar包上傳到服務(wù)器,可以在寶塔面板上直接拖動Jar包到文件夾中,把打包好的后端項目添加到Java項目上就會自動執(zhí)行,如果配置了生產(chǎn)環(huán)境的yaml文件則需要在項目執(zhí)行命令上加上--serve.profiles.active=prod。
?文章來源地址http://www.zghlxwxcb.cn/news/detail-443591.html
?8.這個時候前后端的項目就部署到服務(wù)器上了,可以直接訪問IP地址,直接輸入IP地址訪問的是前端的Nginx服務(wù)器,加上后端端口可以訪問到后端,但是前后端現(xiàn)在不能實現(xiàn)交互,這是因為還沒有解決跨域問題。這里提供兩種解決跨域問題的方法。
? ? ? ? (1)Nginx網(wǎng)關(guān)支持跨域
? ? ? ? ? ? ? ? 在前端項目的Nginx服務(wù)器的配置文件上加上跨域配置,需要根據(jù)自己的項目實際修改。/api是當(dāng)前端訪問到帶/api路徑的項目時觸發(fā)以下請求,而我的后端項目請求中都加上了/api前綴。proxy_pass http://127.0.0.1:8080/api/;是代理到這個地址。后面的都是跨域需要的配置。
location ^~ /api/{
proxy_pass http://127.0.0.1:8080/api/;
add_header 'Access-Control-Allow-Origin' '$http_origin' ;
add_header 'Access-Control-Allow-Credentials' 'true' ;
add_header 'Access-Control-Allow-Methods' 'PUT,POST,GET,DELETE,OPTIONS' ;
add_header 'Access-Control-Allow-Headers' '*' ;
if ($request_method = 'OPTIONS'){
add_header 'Access-Control-Allow-Credentials' 'true' ;
add_header 'Access-Control-Allow-Origin' '$http_origin' ;
add_header 'Access-Control-Allow-Methods' 'PUT,POST,GET,DELETE,OPTIONS' ;
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range' ;
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain; charset=utf-8';
add_header 'Content-Length' 0;
return 204;
}
}
? ? ? ? ? ? ? ? ?(2)在Java后端重寫WebMvcConfigurer
@Configuration
public class WebMvcConfg implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
//設(shè)置允許跨域的路徑
registry.addMapping("/**")
//設(shè)置允許跨域請求的域名
//當(dāng)**Credentials為true時,**Origin不能為星號,需為具體的ip地址【如果接口不帶cookie,ip無需設(shè)成具體ip】
.allowedOrigins("http://localhost:9527", "http://127.0.0.1:9527", "http://127.0.0.1:8082", "http://127.0.0.1:8083")
//是否允許證書 不再默認(rèn)開啟
.allowCredentials(true)
//設(shè)置允許的方法
.allowedMethods("*")
//跨域允許時間
.maxAge(3600);
}
}
?文章來源:http://www.zghlxwxcb.cn/news/detail-443591.html
?
到了這里,關(guān)于使用寶塔部署JavaWeb前后端項目到服務(wù)器的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!