vue cli3項目發布在apache www/vue目錄下並配置history路由


注意:vue項目打包后默認是指向服務器的根路徑(比如apache默認www目錄是根路徑,當然也可以修改),這種情況不需要做路徑的配置,只需要做history配置,如果不是發布到根路徑而是www/vue目錄下,則需要做路徑配置,並做history配置

   需要修改router.jsnew Router 配置,加一個 base: '/vue/', 它指定應用的基路徑,默認是根路徑'/',表示該應用是服務於localhost/vue路徑下,所以必須加base配置,否則應用會展示404頁面,當然了用history路由的話也必須加 mode: 'history';

  二、 在vue.config.js的 module.exports = { publicPath: '/vue/' };  , 默認根路徑'/'
  三、 修改httpd.conf文件,開啟rewrite_module功能:
  

    1. LoadModule rewrite_module libexec/apache2/mod_rewrite.so,去掉前面的#,打開注釋。一般搜索 mod_rewrite.so 能夠找到,不同的服務器可能前面的紅色路徑不太一樣

    2. 找到  AllowOverride None 的那行,把它改成 AllowOverride All,來使  .htaccess 文件生效。

  四、 在apache 的www/vue 目錄下新建  .htaccess文件(此文件是看不到目錄的但是在命令行貌似可以查到), 需要修改RewriteRule 為/vue/index.html, 否則刷新頁面服務端會直接報404錯誤

             .htaccess文件內容

      <IfModule mod_rewrite.c>
          RewriteEngine On
        RewriteBase /
        RewriteRule ^index\.html$ - [L]
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule . /vue/index.html [L]
      </IfModule>

 

發布到其他路徑或是更深的路徑配置都是類似的

參考:https://segmentfault.com/a/1190000012548105  

 

 

 

 

 

 

 

 

 

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM