Rumah hujung hadapan web tutorial js 处理Vue项目编译后部署在非网站根目录方法详解

处理Vue项目编译后部署在非网站根目录方法详解

May 15, 2018 am 11:33 AM
menyusun laman web mengerahkan

这次给大家带来处理Vue项目编译后部署在非网站根目录方法详解,处理Vue项目编译后部署在非网站根目录的注意事项有哪些,下面就是实战案例,一起来看一下。

同一个生产部署项目,基内外网的访问路径并不相同,内网是基于域名根目录来访问,而外网却指向了一个子目录。

eg. :

vue-router: history模式 内网环境:192.168.1.1:8080/index.html 外网环境:domain.com/ttsd/index.html

由于开发出来的项目是要部署在客户方,且客户并不想单独拿一个域名(或子域)来部署,这时,打包后的程序就要作一些配置方面的修改了。

修改配置文件

1、把打包后的资源引用修改为相对路径 找到 config/index.jsbuild 属性下的 assetsPublicPath

build: {
 ...
 assetsPublicPath: './' // 未修改前的配置为 '/',
}
Salin selepas log masuk

2、修改样式引用的资源文件(图片、视频、字体文件等)为相对路径 找到 build/utils.js 中,添加(或修改) publicPath'../../'

if (options.extract) {
 return ExtractTextPlugin.extract({
 use: loaders,
 fallback: 'vue-style-loader',
 publicPath: '../../' // 修改路径
 })
} else {
 return ['vue-style-loader'].concat(loaders)
}
Salin selepas log masuk

 

修改路由

在路由的history模式下,所有的路由都是基于根路径的,如 /xxxx ,由于部署目录未知,所以我们可以根据 location.pathname 来获取到当前访问的文件路径,来修改路由。

vue-router里提供了一个base的属性

base类型: string 默认值: "/" 应用的基路径。例如,如果整个单页应用服务在 /app/ 下,然后 base 就应该设为 "/app/"

修改路由代码

function getAbsolutePath () {
 let path = location.pathname
 return path.substring(0, path.lastIndexOf('/') + 1)
}
const routers = new Router({
 mode: 'history',
 base: getAbsolutePath(),
 ...
})
Salin selepas log masuk

至此,打包配置的相关修改已全部完成,项目也能够正常访问。 但还是会有一个问题,跳转到某个路由后,刷新页面,就gg了,页面为空白,此时就要修改nginx的配置了。

修改nginx的配置

官方给的nginx配置是根目录下的,即 https://router.vuejs.org/zh-cn/essentials/history-mode.html#nginx

location / {
 try_files $uri $uri/ /index.html;
 // 需要修改为
 try_files $uri $uri/ /dist/index.html;
}
Salin selepas log masuk

注: /dist 根据实际部署的网站目录,修改一下就可以。 个人感觉还可以通过nginx内置的指令去动态获取,在下就不太清楚了。

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

vue实现移动端微信公众号步骤详解

jQuery通过方向键控制div上下左右移动步骤详解

Atas ialah kandungan terperinci 处理Vue项目编译后部署在非网站根目录方法详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Adakah terdapat laman web untuk mempelajari bahasa C? Adakah terdapat laman web untuk mempelajari bahasa C? Jan 30, 2024 pm 02:38 PM

Laman web untuk mempelajari bahasa C: 1. Laman Web Bahasa C; 3. Forum Bahasa C 6. Tianji.com; 51 Rangkaian belajar kendiri; 9. Likou; Pengenalan terperinci: 1. Laman web bahasa C bahasa Cina, yang merupakan laman web khusus untuk menyediakan bahan pembelajaran bahasa C untuk pemula Ia kaya dengan kandungan, termasuk tatabahasa asas, petunjuk, tatasusunan, fungsi, struktur dan modul lain; Ini adalah laman web pembelajaran pengaturcaraan yang komprehensif dan banyak lagi.

Yolov10: Penjelasan terperinci, penggunaan dan aplikasi semuanya di satu tempat! Yolov10: Penjelasan terperinci, penggunaan dan aplikasi semuanya di satu tempat! Jun 07, 2024 pm 12:05 PM

1. Pengenalan Sejak beberapa tahun kebelakangan ini, YOLO telah menjadi paradigma dominan dalam bidang pengesanan objek masa nyata kerana keseimbangannya yang berkesan antara kos pengiraan dan prestasi pengesanan. Penyelidik telah meneroka reka bentuk seni bina YOLO, matlamat pengoptimuman, strategi pengembangan data, dsb., dan telah mencapai kemajuan yang ketara. Pada masa yang sama, bergantung pada penindasan bukan maksimum (NMS) untuk pemprosesan pasca menghalang penggunaan YOLO dari hujung ke hujung dan memberi kesan buruk kepada kependaman inferens. Dalam YOLO, reka bentuk pelbagai komponen tidak mempunyai pemeriksaan yang komprehensif dan teliti, mengakibatkan lebihan pengiraan yang ketara dan mengehadkan keupayaan model. Ia menawarkan kecekapan suboptimum, dan potensi yang agak besar untuk peningkatan prestasi. Dalam kerja ini, matlamatnya adalah untuk meningkatkan lagi sempadan kecekapan prestasi YOLO daripada kedua-dua pasca pemprosesan dan seni bina model. sampai habis

Bagaimana untuk menyelesaikan masalah tidak dapat diakses selepas Tomcat menggunakan pakej perang Bagaimana untuk menyelesaikan masalah tidak dapat diakses selepas Tomcat menggunakan pakej perang Jan 13, 2024 pm 12:07 PM

Bagaimana untuk menyelesaikan masalah bahawa Tomcat tidak boleh berjaya mengakses pakej perang selepas menggunakan ia memerlukan contoh kod khusus Sebagai pelayan Web Java yang digunakan secara meluas, Tomcat membenarkan pemaju untuk membungkus aplikasi Web mereka sendiri yang dibangunkan ke dalam fail perang untuk penggunaan. Walau bagaimanapun, kadangkala kita mungkin menghadapi masalah tidak berjaya mengakses pakej perang selepas menggunakannya. Ini mungkin disebabkan oleh konfigurasi yang salah atau sebab lain. Dalam artikel ini, kami akan menyediakan beberapa contoh kod konkrit yang menangani dilema ini. 1. Semak perkhidmatan Tomcat

Panduan Penggunaan Gunicorn untuk Aplikasi Flask Panduan Penggunaan Gunicorn untuk Aplikasi Flask Jan 17, 2024 am 08:13 AM

Bagaimana untuk menggunakan aplikasi Flask menggunakan Gunicorn? Flask ialah rangka kerja Web Python ringan yang digunakan secara meluas untuk membangunkan pelbagai jenis aplikasi Web. Gunicorn (GreenUnicorn) ialah pelayan HTTP berasaskan Python yang digunakan untuk menjalankan aplikasi WSGI (WebServerGatewayInterface). Artikel ini akan memperkenalkan cara menggunakan Gunicorn untuk menggunakan aplikasi Flask, dengan

PHP Jenkins 101: Satu-satunya cara untuk bermula dengan CI/CD PHP Jenkins 101: Satu-satunya cara untuk bermula dengan CI/CD Mar 09, 2024 am 10:28 AM

Pengenalan Penyepaduan berterusan (CI) dan penggunaan berterusan (CD) ialah amalan utama dalam pembangunan perisian moden yang membantu pasukan menyampaikan perisian berkualiti tinggi dengan lebih pantas dan lebih dipercayai. Jenkins ialah alat CI/CD sumber terbuka yang popular yang mengautomasikan proses binaan, ujian dan penggunaan. Artikel ini menerangkan cara menyediakan saluran paip CI/CD dengan Jenkins menggunakan PHP. Sediakan Jenkins Pasang Jenkins: Muat turun dan pasang Jenkins daripada tapak web rasmi Jenkins. Cipta projek: Cipta projek baharu daripada papan pemuka Jenkins dan namakannya agar sepadan dengan projek php anda. Konfigurasikan kawalan sumber: Konfigurasikan repositori git projek PHP anda sebagai Jenkin

Bagaimana untuk menyelesaikan masalah tidak dapat diakses selepas Tomcat menggunakan pakej perang Bagaimana untuk menyelesaikan masalah tidak dapat diakses selepas Tomcat menggunakan pakej perang Jan 13, 2024 am 11:43 AM

Penyelesaian kepada masalah yang Tomcat tidak boleh diakses selepas menggunakan pakej perang memerlukan contoh kod khusus Pengenalan: Dalam pembangunan Web, Tomcat ialah salah satu pelayan Web Java yang paling banyak digunakan. Walau bagaimanapun, kadangkala selepas kami menggunakan pakej perang kepada Tomcat, terdapat masalah yang tidak boleh diakses. Artikel ini akan memperkenalkan beberapa situasi yang mungkin menyebabkan ketidakbolehcapaian, dan memberikan penyelesaian dan contoh kod yang sepadan. 1. Pastikan pakej perang telah digunakan dengan betul Langkah pertama ialah memastikan pakej perang telah digunakan dengan betul ke aplikasi web Tomcat.

Bagaimana untuk menggunakan dan menyelenggara laman web menggunakan PHP Bagaimana untuk menggunakan dan menyelenggara laman web menggunakan PHP May 03, 2024 am 08:54 AM

Untuk berjaya menggunakan dan menyelenggara tapak web PHP, anda perlu melakukan langkah berikut: Pilih pelayan web (seperti Apache atau Nginx) Pasang PHP Cipta pangkalan data dan sambungkan PHP Muat naik kod ke pelayan Sediakan nama domain dan Pemantauan DNS penyelenggaraan tapak web langkah termasuk mengemas kini PHP dan pelayan web, dan membuat sandaran tapak web, memantau log ralat dan mengemas kini kandungan.

Gunakan gabungan Gunicorn dan Flask yang tiada tandingan Gunakan gabungan Gunicorn dan Flask yang tiada tandingan Jan 17, 2024 am 10:24 AM

Gunicorn dan Flask: Kombinasi penggunaan yang sempurna, memerlukan contoh kod khusus Gambaran Keseluruhan: Sangat penting bagi pembangun untuk memilih kaedah penggunaan yang sesuai, terutamanya untuk aplikasi web Python. Antara rangka kerja web Python, Flask ialah pilihan yang sangat popular, dan Gunicorn ialah pelayan untuk menggunakan aplikasi Python. Artikel ini akan memperkenalkan gabungan Gunicorn dan Flask dan menyediakan beberapa contoh kod khusus untuk membantu pembaca

See all articles