国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

vue項目部署到Apache服務(wù)器中遇到的問題解決

2019-11-19 13:10:29
字體:
供稿:網(wǎng)友

最近剛重構(gòu)完,我們的一個項目,由原來的jsp模式改為了前后端分離,前端選型為vue,開發(fā)完成之后第一件時間就是要部署測試,服務(wù)端選的是Apache。本來以為很簡單的一件事情,幾經(jīng)坎坷部署了兩天才算能夠正常訪問了。先記錄如下,

過程搭建Apache環(huán)境,vue項目build之后把生成的dist文件放到,Apache下面,啟動Apache之后本以為能夠正常訪問了,

前提說下:vue項目路由model:history ,默認不會出現(xiàn)下面的問題,因為個人感覺項目路徑中帶個#實在難受

但是發(fā)現(xiàn)錯誤如下:


無法正常訪問,報了一堆404,由于接觸vue項目不久,一臉懵逼,于是百度了一下內(nèi)容如下(vue項目部署到Apache404錯誤)發(fā)現(xiàn)有很多解決方案,最常見的就是增加.htaccess,自己也按照網(wǎng)上方式操作了一遍,反復(fù)更改無效,當然有可能是自己配置的方式不對,反正我的是沒有解決。

于是換了一個思路重新搜索了一下,看到了另一篇文章:https://www.cnblogs.com/xyyt/p/7718867.html 茅塞稍微開了一點,我的正常配置如下:


無非就是要把多的那一段路由信息去掉而已,嘗試了如下變態(tài)的修改:


試著重新build發(fā)布一下到Apache,奇跡的事情發(fā)生了,沒問題了,一切正常,當然我的修改方式我也感覺不是很妥當,當實在找不到合適方式,只能暫時這樣的修改,所有的路徑都按照上面的修改,就能夠正常訪問了

vue項目部署到服務(wù)器頁面空白的問題

  • 路由跳轉(zhuǎn)的時候使用mode: 'history'去掉#號,放到服務(wù)器crm目錄下,根據(jù)www.asa.com/crm路徑訪問,出現(xiàn)獲取不到資源問題,頁面一片空白,搜索問題,路由配置文件中添加mode: 'history', base: '/crm/',。
  • 然后資源都獲取到了也都加載了但是頁面還是空白,沒有進行渲染(這個問題好像和問題1相同,當時沒有記錄下來現(xiàn)在回憶起來有點模糊),通過后端配置解決了問題。
  • 頁面渲染成功各頁面跳轉(zhuǎn)頁都正常了,但是又出現(xiàn)了在當前頁面刷新都會出現(xiàn)404的問題,因為只有一個index.html文件,url中的路由跳轉(zhuǎn)都是vue-router進行在實際文件中沒有l(wèi)ogin.html等文件,服務(wù)器在找這些頁面會找不到出現(xiàn)404錯誤,因此需要后端服務(wù)器配置進行404全部跳轉(zhuǎn)到index.html解決問題。
  • 閑著沒事有想到問題3,后端到底如何配置的,自己就實現(xiàn)了一遍,以mac下自帶apache為例進行配置
    • 到mac下apache安裝路徑/private/etc/apache2/httpd.conf中, (apahce的配置文件)

開啟rewrite_module功能,

LoadModule rewrite_module libexec/apache2/mod_rewrite.so,去掉前面的#;

DocumentRoot "/users/Dev/sites"(設(shè)置apache默認指向目錄)<Directory "/users/Dev/sites">Options Indexes FollowSymLinks MultiviewsMultiviewsMatch AnyAllowOverride AllRequire all granted</Directory>

設(shè)置AllowOverride All是為了使apache支持.hatccess文件。

* 在該項目根目錄添加.hatccess文件(index.html平級),內(nèi)容跟https://router.vuejs.org/zh-cn/essentials/history-mode.html‘>HTML5 History 模式(vue-router文檔舉例)類似,

<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /crm/RewriteRule ^index/.html$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /crm/index.html [L]</IfModule>

,需要修改的兩個地方,RewriteBase /crm/;

RewriteRule . /crm/index.html [L],要添加項目所在文件的文件名,

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 重庆市| 临海市| 韶山市| 阳山县| 溧阳市| 元谋县| 扎赉特旗| 青田县| 商都县| 保康县| 孙吴县| 云龙县| 翁牛特旗| 抚州市| 双桥区| 仲巴县| 保山市| 尼玛县| 桐庐县| 景泰县| 通道| 凤冈县| 栖霞市| 塔城市| 湘乡市| 麻栗坡县| 历史| 闽清县| 红桥区| 福安市| 南川市| 仁寿县| 苗栗县| 本溪市| 康平县| 化州市| 天台县| 五莲县| 青龙| 盐池县| 曲阳县|