Rumah  >  Artikel  >  Tutorial sistem  >  Operasi pengerahan Nginx+Tomcat bagi projek Angular+javaweb

Operasi pengerahan Nginx+Tomcat bagi projek Angular+javaweb

王林
王林asal
2024-07-16 12:41:29487semak imbas

Pada mulanya, saya menggunakan ng build –prod –aot untuk menyusun dan membungkus. Perhatikan di sini bahawa memandangkan ia kini terbina dalam secara rasmi, anda hanya perlu memasukkan ng build –prod semasa pembungkusan. Di sini anda boleh membandingkannya dengan saiz projek saya:

ng build : 8,348,761字节
ng build –aot : 9,232,405字节
ng build –prod : 1,839,811字节
ng build –prod –aot : 1,839,811字节

Akhir sekali, dapat dilihat bahawa ng build –prod dapat melengkapkan pembungkusan minimum untuk pengeluaran. Saya tidak memahami sesuatu di sini Binaan yang telah disusun lebih besar daripada binaan biasa. Saya harap seseorang boleh membantu saya menjawabnya.

Saya tidak akan bercakap tentang cara untuk menjadikan projek lebih kecil di sini.

Apabila saya menyalin fail dalam dist ke folder ROOT Tomcat dan membuka http://127.0.0.1, halaman projek yang biasa dipaparkan. Saya biasanya menekan F5 untuk memuat semula dan mendapati ralat 404. Saya mencari soalan berkaitan tentang Baidu dan membuat kesimpulan: apabila memasuki halaman buat kali pertama, proses biasa dan proses biasa diproses oleh mekanisme penghalaan Angular. Walau bagaimanapun, jika terdapat operasi muat semula, ia adalah permintaan yang dihantar ke perkhidmatan bahagian belakang Jika bahagian belakang tidak mengubah hala permintaan anda ke index.html (di sini merujuk kepada pintu masuk aplikasi satu halaman), ia akan melaporkan. 404 tidak ditemui Ralat halaman.

Wah, panjang lebar betul. Tetapi sekurang-kurangnya anda faham sebabnya Jika anda tahu sebabnya, anda harus memikirkan bagaimana untuk menyelesaikannya!

Penyelesaian 1:

Konfigurasikan gaya url Angular kepada gaya cincang Kaedah ini adalah kaedah yang paling biasa saya lihat, dan semuanya disalin daripada StackOverflow. Gaya pushstate H5 kini digunakan secara amnya, dan pegawai Angular memberitahu kami bahawa jika tidak ada sebab yang mencukupi untuk menggunakan gaya cincang, adalah lebih baik untuk menggunakan gaya H5 seberapa banyak yang mungkin untuk anda gunakan # titik utama sekarang? Dan sesetengah orang menyatakan bahawa jika gaya cincang dikonfigurasikan, 404 masalah masih akan berlaku dalam pembayaran WeChat atau laluan dalam Angular. Jika anda berkeras untuk menggunakannya, itu tiada masalah Sila rujuk dokumentasi rasmi untuk butiran

Penyelesaian 2:

Memandangkan ia melaporkan 404, bukankah anda hanya menentukan halaman ralat sebagai direktori akar dalam tomcat?

Penerangan: Buka direktori bekas Tomcat, Tomcat/conf/web.xml, pindah ke bahagian bawah, dan tambahkan kod berikut di atas:

Operasi pengerahan Nginx+Tomcat bagi projek Angular+javaweb

Selepas konfigurasi, mulakan semula Tomcat. Tidak kira bagaimana saya menyegarkannya sekarang, halaman itu akan dipaparkan tanpa masalah. Tetapi kami mendapati bahawa walaupun halaman itu boleh dipaparkan, kami boleh melihat 404 permintaan di bawah teg rangkaian. Dalam erti kata lain, ketika kami menyegarkan semula, angular tidak dapat mencari halaman, tetapi diarahkan ke index.html sebagai 404 oleh Tomcat. Tomcat membawa seseorang yang telah sesat kembali ke jalan yang betul, tetapi ia juga menandakan dia sebagai "dia pernah menjadi orang jahat". Jangan bercakap tentang sama ada kaedah mengkonfigurasi halaman ralat adalah sesuai Mari kita bincangkan dahulu masalah apa yang akan dibawa oleh tanda 404 ini kepada kita. Pertama sekali, selagi anda menemui platform yang mengendalikan halaman ralat 404, anda pasti akan ditakdirkan. Sebagai contoh, jika WeChat mengesan bahawa anda mempunyai halaman 404, ia akan memberi anda halaman dengan serta-merta untuk membantu kanak-kanak yang hilang mencari rumah mereka.

Dia sangat teliti dan baik Dia telah melakukan kerja yang baik untuk kebajikan awam, tetapi tugas anda akan hilang. Jika halaman anda diletakkan dalam akaun rasmi dan anda memasuki halaman untuk mencari kanak-kanak sebaik sahaja anda membenarkannya, tidak mengapa jika pengurus anda tidak menggodam anda sehingga mati. Jadi terpulang kepada anda sama ada mahu menggunakan kaedah ini atau tidak!

Penyelesaian 3

Jika anda tidak menemui halaman tersebut, saya akan membimbing anda di bahagian belakang! Saya menulis pemintas atau penapis. Sebelum anda menghantar sebarang permintaan, saya akan mengubah hala anda ke index.html terlebih dahulu. Ini tiada masalah! Sudah tentu tiada masalah. Ini adalah untuk mencari ubat khusus untuk punca penyakit ini~ Semua ini nampaknya penyelesaian yang sempurna~ Walau bagaimanapun, kami mendapati bahawa kami tidak membincangkannya dalam topik hari ini, dan kami mesti memilih beberapa masalah dengan penyelesaian ini! Jika tidak langkah muktamad kita akan kelihatan hambar.
Memandangkan projek kami diasingkan dari depan ke belakang, ia adalah perkhidmatan tanpa negara. Bahagian belakang bertanggungjawab untuk operasi pangkalan data dan mengembalikan data antara muka yang berkaitan ke bahagian hadapan Bahagian hadapan hanya bertanggungjawab untuk memproses logik paparan dan berinteraksi dengan bahagian belakang. Pemajukan yang kerap,
Bahagian belakang ps: Anda meminta saya untuk tidak memproses halaman, tetapi anda masih meminta saya untuk memajukannya Adakah anda bodoh? Jika bahagian belakang anda tidak mahu melakukan kerja pemajuan, apakah yang boleh anda lakukan? Sudah tentu ia membuli operasi dan penyelenggaraan!

Penyelesaian·Muktamad

Jika anda seorang master operasi dan penyelenggaraan, maka saya rasa anda boleh minum teh sahaja di sebelah saya. Bagaimana jika...pemula? Kemudian sebagai hujung hadapan, anda boleh membantu (zhuang) (bi), gunakan nginx! Proksi terbalik, imbangan beban, balabala…

Berpura-pura anda mempunyai persekitaran nginx di sini, saya menggunakan tingkap di sini. Buka fail nginx.conf dan jangan tulis huraian tertentu Baca ulasan sendiri Jika anda tidak mahu membacanya, anda boleh memuat turun fail konfigurasi secara langsung.

Operasi pengerahan Nginx+Tomcat bagi projek Angular+javawebPerlu diambil perhatian bahawa konfigurasi direktori akar bukan lokasi/{}, yang bermaksud bahawa semua permintaan dimajukan.

Atas ialah kandungan terperinci Operasi pengerahan Nginx+Tomcat bagi projek Angular+javaweb. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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