導航:首頁 > 配伺服器 > vue如何設置伺服器

vue如何設置伺服器

發布時間:2023-08-27 02:27:54

❶ 怎麼把VUE項目部署到伺服器上面

1.使用xshell登錄到阿里雲伺服器。安裝nginx(本文安裝到/etc下)

[plain]view plain

❷ 前端vue與後端Thinkphp在伺服器的部署

vue在服務端部署時,我們都知道通過npm run build 指令打包好的dist文件,通過http指定是可以直接瀏覽的,Thinkphp通過域名指向index.php文件才可以瀏覽。要使前端正常調用後端數據,有兩種方法:1、前端跨域調用後端數據,2、前端打包文件部署在後端的伺服器文件夾下(同域)。

web伺服器: apache

一、跨域

在伺服器配置站點:

在路徑/home/www/  下創建test項目文件夾,用來放項目文件。  

找到httpd-vhosts.conf文件配置站點  

前端站點:  

    ServerName test.test.com  

    DocumentRoot "/home/www/test/dist"    

    DirectoryIndex index.html  

後端站點:  

    ServerName test.testphp.com  

    DocumentRoot "/home/www/test/php"    

    DirectoryIndex index.php  

將前端打包好的dist文件放在/home/www/test/ 文件夾下,運行http://test.test.com可瀏覽,當路徑改變時,刷新會出現404錯誤。此時dist文件下創建一個.htaccess文件,當路徑不存在時,路徑指向http://test.test.com/index.html能解決此問題。

  RewriteEngine On  

  RewriteBase /  

  RewriteRule ^index\.html$ - [L]  

  RewriteCond %{REQUEST_FILENAME} !-f  

  RewriteCond %{REQUEST_FILENAME} !-d  

  RewriteRule . /index.html [L]  

在/home/www/test文件夾下創建項目根目錄php文件夾,將thinkphp文件放在php下。TP5的入口文件在public文件下,在這將public下的入口文件index.php挪到php文件夾下(個人習慣將入口文件放在項目根目錄), 後端綁定Index模塊。

前端調用後端介面,存在跨域,跨域解決方法有好幾種,在這我將在後端php做配置,解決跨域問題,在公用控制器設置跨域配置:

class Common extends Controller  

{  

    public $param;  

    // 設置跨域訪問  

    public function _initialize()  

    {  

        parent::_initialize();  

        isset($_SERVER['HTTP_ORIGIN']) ? header('Access-Control-Allow-Origin: '.$_SERVER['HTTP_ORIGIN']) : '';  

        header('Access-Control-Allow-Credentials: true');  

        header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS');  

        header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, authKey, sessionId");  

$param =  Request::instance()->param();  

$this->param = $param;  

    }  

}  

前端調用登錄介面: this.axios.post('http://test.testphp.com/index.php/base/login', {user: '', password: ''})。

(可在webpack.base.conf.js文件下可定義介面:http://test.testphp.com/index.php/)

二、同域

後端配置同上,公共配置器中的header配置注釋。將前端的dist文件下的所有文件(包含.htaccess),放在php文件夾下。將後端index控制器的index方法的路徑重定向php下的index.html文件:

namespace app\index\controller;  

use think\Controller;  

class Index extends Controller  

{  

    public function index() {  

$this->redirect('/index.html');  

    }  

}  

前端調用登錄介面: this.axios.post('/index.php/base/login', {user: '', password: ''})

轉自:https://blog.csdn.net/qq_35465132/article/details/78986675

❸ 《vue》設置代理伺服器devServer 的 proxy

在開發環境,vue-cli 會幫我們創建一個開發伺服器( http://localhost:8080 ),因此,我們請求後端伺服器的時候,可能會出現跨域問題,因為跨域的三要素:域名、埠、協議其一不同。

完整的請求地址:

我的這個地址,裡面本身就攜帶有 api 欄位的

利用 vue-cli 中的 devServer 配置

記住,如果你的地址沒有類似我那個地址那樣,有個 api 作為標識的,你可以手動在地址上加上一些標識,然後利用 pathRewrite 再抹掉即可。

一般不會這么做,這樣做意義也不大。因為這么做的話,不單單ajax請求都用的遠程,連js、css、圖片等其他資源都是遠程返回的。。。

用了這個方法,在開發階段,就不用設置 axios 中的 baseUrl 了,或者這樣設置:

然後開發階段,你的一些ajax的請求的 url 就會匹配到 /api 開頭,設置 proxy了

千萬不要這么設置:

看似匹配到了,實際上沒有生效。。。(我也不知道為什麼,知道的同學說一下)

實際上,這里是看不到的。。
因為,F12 這里的這個請求,實際上是發給了 本地的臨時伺服器,再由本地的伺服器發送給遠程伺服器。

可以這么理解:本地伺服器將F12的這個請求攔截了,然後自己偷偷改掉 url,再請求的遠程伺服器。

正因為本地伺服器脫離瀏覽器的束縛,解決了跨域問題!

❹ vue項目如何部署到伺服器

第一步配置 vue.config.js

第二步修改路由,改為 hash模式

第三步文件打包,執行以下,目錄中會出現一個dist文件夾,將文件拖到伺服器的 root 文件夾中

第四步可以通過域名進行訪問 http://www.linlin.run/my-project/index.html#/home

❺ vuejs怎麼在伺服器部署

用vue-cli搭建的做法
1、npm run build
2、把dist里的文件打包上傳至伺服器 例 /data/www/,我一般把index.html放在static里
所以我的文件路徑為:

/data/www/static
|-----index.html
|-----js
|-----css
|-----images
....

3、配置nginx監聽80埠, location /static alias 到 /data/www/static,重啟nginx
location /static {
alias /data/www/static/;
}
4、瀏覽器訪問http://ip/static/index.html即可

閱讀全文

與vue如何設置伺服器相關的資料

熱點內容
加密的pdf怎麼提取和修改 瀏覽:488
壓縮空氣氣體流量計 瀏覽:845
高角杯如何編程 瀏覽:1011
哪個app可以下載迷失島 瀏覽:29
100以內程序員鍵盤 瀏覽:912
調試助手源碼是什麼 瀏覽:601
程序員網優 瀏覽:461
有沒有極限壓縮方法 瀏覽:79
岳陽hypermill五軸編程 瀏覽:385
超級舒服的解壓神器 瀏覽:450
超短macd源碼 瀏覽:165
群暉怎麼設置用戶訪問指定文件夾 瀏覽:555
安卓怎麼測觸摸屏 瀏覽:595
javastring原理 瀏覽:317
如何關閉手機dhcp伺服器 瀏覽:985
php免費ide 瀏覽:202
程序員詞句 瀏覽:978
伺服器如何禁止某個ip段 瀏覽:331
便簽手機文件夾 瀏覽:770
gameloft的java游戲 瀏覽:112