1. Penulis: moonsbird
Judul: Ringkasan pengalaman konfigurasi integrasi server untuk Apache+Tomcat+MySQL+jsp+php di Windows
Waktu: 2004.8.19
Awalnya diterbitkan di Stasiun Jincheng Universitas Jiaotong Barat Daya
2. Artikel ini merupakan rangkuman pengalaman penulis mempelajari lingkungan server jsp/konfigurasi selama beberapa tahun terakhir. Boleh diperbanyak, namun harap sebutkan sumbernya.
Sudah lama sejak saya mulai belajar jsp. Ada banyak contoh integrasi jsp di Internet, tetapi banyak juga masalah.
Untuk integrasi Apache+Tomcat+MySQL+jsp+php, ada sedikit perbedaan untuk versi Tomcat dan Apache yang berbeda.
Sekalipun E-text Anda bagus, jika Anda membaca manual Tomcat dan Apache, Anda mungkin tidak berhasil mengintegrasikannya sepenuhnya. Saya di rumah selama liburan musim panas, dan kecepatan Internet tidak selambat di Universitas Jiaotong---selambat mobil calo tua, jadi berdasarkan ini, penulis berkonsultasi dengan banyak informasi online dan menyerap esensinya. Artikel ini saya tulis dengan harapan dapat memberikan kemudahan bagi pemula dan juga berfungsi sebagai panduan referensi A master.
jsp sangat bagus. Hal ini didasarkan pada teknologi Java dan menggunakan JavaBean/Servlet untuk membuat situs web dinamis. Pemrograman berorientasi objek Java yang kuat memberikan keunggulan unik pada Jsp dibandingkan php dan asp. Namun mempelajari jsp lebih sulit dibandingkan dengan php dan asp.
Saya rasa salah satu alasannya adalah konfigurasi lingkungan server jsp sedikit lebih rumit. Untuk produksi halaman web dinamis, ASP telah lama berada di atas angin di Universitas Jiaotong. Tidak banyak "ahli" (mungkin banyak orang berpikir bahwa mereka yang menggunakan jsp adalah ahlinya) menggunakan jsp, dan Universitas Jiaotong lebih dari itu. berhasil.
situs web jsp seperti Century Star Network (Tomcat), situs web Institut Pendidikan Online (Resin), Jaringan Penerimaan dan Ketenagakerjaan Universitas Jiaotong (Tomcat), servernya adalah
Linux 9 berjalan relatif stabil dan dapat diandalkan. Saya pernah menerbitkan artikel tentang integrasi Apache dan Tomcat di Linux. Ide integrasi di Linux dan Windows sama, menggunakan Apache untuk mengurai *.html/*.htm
Untuk halaman web statis, ketika menemukan *.jsp dan servlet, halaman jsp dilemparkan ke Tomcat (atau
resin), sedikit lebih merepotkan untuk membuat modul ini dengan mengkompilasinya di Linux. Artikel ini menggunakan modul siap pakai di bawah win untuk menyelesaikan integrasi.
Tanpa basa-basi lagi, mari mulai mengintegrasikan:
Perangkat lunak yang diperlukan
(1) j2sdk-1_4_2-windows-i586.exe
Versi jdk tidak terlalu relevan dan tidak mempengaruhi integrasi Apache dan Tomcat. Perhatikan saja saat mengonfigurasi variabel lingkungan.
(2) apache_2.0.49-win32-x86-no_ssl.exe
Versi apache tidak berdampak banyak pada integrasi, tetapi yang terbaik adalah memanfaatkan versi ini.
(3)jakarta-tomcat-4.1.30.exe
Yang terbaik adalah menggunakan versi ini. Saya belum mencoba versi lain, yang mungkin menyebabkan kegagalan integrasi.
(3) php-4.3.3-Win32.zip
Ini adalah paket terkompresi, cukup unduh dan unzip secara langsung.
(4) mod_jk.dll
Modul ini ditempatkan pada modul di apache, dan digunakan untuk berkomunikasi antara Tomcat dan Apache.
(5) mysql-max-3.23.46a-win.zip
Database mysql, versinya berdampak kecil pada integrasi.
(6) pengemudi jdbc
driver mysql, digunakan saat menghubungkan ke database
Saya tidak akan memposting alamat software di atas. Cari Baidu dan Beida Tianwang secara online, selama Anda mencari dengan hati-hati, itu tidak akan menjadi masalah besar memintanya.
1. Instal j2sdk
Di Windows, langsung jalankan file j2sdk-1_4_1_01-windows-i586.exe yang diunduh dan instal ke direktori sesuai dengan wizard instalasi, misalnya instal ke d:serverj2sdk
1. Konfigurasikan variabel lingkungan:
Tambahkan nilai variabel variabel CLASSPATH sebagai
./;%CLASSPATH%;D:serverj2sdk1.4.0libdt.jar;d:serverj2sdk1.4.0libtools.jar;
d:serverj2sdk1.4.0bin
Konfigurasi ini memastikan bahwa kelas kelas dapat ditemukan ketika java sedang berjalan.
2. Tambahkan variabel JAVA_HOME, nilai variabelnya adalah d:serverj2sdk1.4.0
3. Pada variabel path asli, tambahkan d:serverj2sdk1.4.0bin, sehingga perintah java dapat dijalankan di mana pun berada.
Restart
cmd untuk masuk ke dos, jalankan java dan javac untuk melihat apakah ada respon. Jika bantuan perintah muncul, maka java berhasil diinstal. Anda juga dapat menjalankan java applet untuk melihatnya
.
public static void main(String args[]){
System.out.println("Melihat ini berarti instalasi Java berhasil!");
}
}
Simpan program di atas dalam file test.java, harus test.java, lalu gunakan perintah untuk mengkompilasi
tes javac.java
Jika tidak ada kesalahan berarti kompilasi berhasil. Jika ada kesalahan berarti variabel lingkungan Java belum dikonfigurasi dengan benar dan baru dikonfigurasi ulang berdasarkan penulisan program yang benar. Jika kompilasi berhasil, jalankan:
tes java
Catatan, bukan java test.java! Kalau sudah benar tinggal print:
Melihat ini berarti java berhasil diinstall!
gxgx, jdk berhasil diinstall! Anda bisa melanjutkan ke langkah
selanjutnya
1. Jalankan apache_2.0.49-win32-x86-no_ssl.exe, cukup klik "OK" dan "Accept" sepanjang jalan, pilih jalurnya
d:servergrup ApacheApache2.
Sampai di sini, apache telah berhasil diinstal dan berjalan. Anda dapat melihatnya dengan memasukkan http://localhost/ di IE.
halaman beranda Apache. Instalasi berhasil!
2. Ubah httpd.conf
File konfigurasi apache adalah httpd.conf, yang terletak di folder conf di bawah direktori root apache.
(1). Ubah direktori root situs web default:
Buat folder www di bawah d:server sebagai direktori root situs web
DocumentRoot "D:/server/Grup Apache/Apache2/htdocs"
Ubah ke DocumentRoot "D:/server/www
(2). Ubah pengaturan karakter
Apache akan menghasilkan karakter yang kacau saat mem-parsing halaman web berbahasa Mandarin.
Ubah AddDefaultCharset ISO-8859-1 menjadi AddDefaultCharset GB2312
(3). Ubah beranda default
Saat mengakses direktori, apache secara otomatis akan mengimpor halaman beranda, dan prioritasnya akan berurutan.
Ubah DirectoryIndex index.html index.html.var menjadi
DirectoryIndex indeks.html indeks.jsp indeks.php default.jsp default.php indeks.html.var
(4). Atur halaman kesalahan
Ini akan lebih aman untuk situs web Anda. Jika tidak disetel, dan orang lain memasukkan jalur acak setelah URL Anda, kesalahan 404 akan ditampilkan.
kesalahan, dan nomor versi server Anda akan ditampilkan. Sekilas konfigurasi server jelas. Untuk menghindari situasi ini, Anda dapat mengatur halaman kesalahan.
Ketika terjadi error 404 yaitu halaman web tidak dapat ditemukan, arahkan pengunjung ke halaman error
muncul:
#
# Respons kesalahan yang dapat disesuaikan hadir dalam tiga bentuk:
#1) teks biasa 2) pengalihan lokal 3) pengalihan eksternal
#
# Beberapa contoh:
#ErrorDocument 500 "Server membuat boo boo."
#ErrorDocument 404 /missing.html
#ErrorDocument 404 "/cgi-bin/missing_handler.pl"
#ErrorDocument 402 http://www.example.com/subscription_info.html
#
Bagian ini dari httpd.conf, #ErrorDocument 404 /missing.html
Satu baris diubah menjadi ErrorDocument 404 /error/noFile.htm, di mana noFile.htm adalah file kesalahan berikutnya di d:serverwwwerror.
Anda harus membangunnya sendiri. Ketika kesalahan 404 terjadi, masuk ke halaman noFile.htm dan akan muncul pesan bahwa halaman web tidak ditemukan. Maka tidak mungkin melihat informasi perangkat lunak server Anda. Anda juga dapat mengatur halaman berorientasi kesalahan lainnya. Silakan merujuk ke informasi yang relevan untuk nomor kesalahan respons http tertentu.
Restart apache. Jika tidak terjadi apa-apa, instalasi telah berhasil. Tempatkan halaman statis di direktori d:serverwwwerror untuk melihat apakah dapat diurai dengan sukses.
Masukkan salah satu: http://localhost/sdagasgdasasg.htm dan lihat apakah itu mengarah ke kesalahan 404 yang Anda atur, yaitu halaman kesalahan noFile.htm.
Kesuksesan!
Saya tidak akan menjelaskan secara detail tentang arti parameter lain di apache, Anda bisa mengeceknya secara online, sebenarnya cara terbaik adalah dengan membaca komentar di httpd.conf yang sudah sangat jelas.
Oke, sekarang apache sudah berhasil terinstal. Anda bisa istirahat sejenak, mendengarkan musik, dan memulai langkah instalasi selanjutnya :)
3.instalasi php
Buka zip php-4.3.3-Win32.zip dan buka direktori d:serverphp. Konfigurasikan PHP dan Apache agar dapat mengurai program php.
Ganti nama "php.ini-dist" di direktori d:serverphp menjadi "php.ini" dan salin ke C:windowssystem32
(Direktori Win2K: C:winntsystem32), masukkan baris berikut di file konfigurasi Apache httpd.conf agar mendukung php.
SkripAlias /php/ "d:/server/php/"
Aplikasi AddType/x-httpd-php .php3
Aplikasi AddType/x-httpd-php .php
Aplikasi AddType/x-httpd-php .phtml
Aplikasi tindakan/x-httpd-php "/php/php.exe"
Buat halaman web: index.php di bawah d:serverwww, dengan konten berikut:
<html>
<head><title>tes php</title></head>
<?php
phpinfo();
?>
</html>
Edit dengan editor teks dan simpan sebagai index.php, restart apache, masukkan http://localhost/index.php di IE, jika variabel lingkungan php muncul berarti php berhasil diinstal ?php phpinfo(); ?>, berarti instalasi tidak berhasil.
4. Instalasi Tomcat
Saya menggunakan file instalasi jakarta-Tomcat-4.1.30.exe. Cukup klik "OK" di bawah Windows. Direktori instalasinya relatif sederhana
d:serverkucing jantan
Tetapkan variabel lingkungan di bawah ini:
Sama seperti variabel lingkungan jdk, tambahkan variabel TOMCAT_HOME, nilainya d:serverTomcat; tambahkan variabel CATALINA_HOME, nilainya
d:Tomcatserver, tambahkan d:serverTomcatbin ke variabel jalur
Selanjutnya, mulai Tomcat dan jalankan file bin/startup.bat di direktori Tomcat. Konsol yang menjalankan Tomcat muncul dan Tomcat berhasil dijalankan.
Masukkan http://localhost:8080/ di IE. Jika Anda melihat Big Cat, instalasi Tomcat berhasil
5. Instal MySQL.
Langkah 1: Unzip mysql-max-3.23.46a-win.zip dan jalankan file instalasi mysql. , instal mysql ke d:servermysql
Langkah 2: Tambahkan d:servermysqlbin ke jalur variabel lingkungan
Langkah 3: Masuk ke direktori d:servermysqlbin dan jalankan winmysqladmin. Kotak dialog akan muncul sekarang. Tetapkan kata sandi pengguna mysql
Langkah 4: Masukkan dos, masukkan mysql/bin, dan jalankan perintah berikut untuk membuka mysql
mysqld-nt --mandiri
Kemudian mysql dibuka
Kemudian jalankan:
mysql
Jika diaktifkan, teks berikut akan muncul:
Selamat datang di monitor MySQL.
Id koneksi MySQL Anda adalah 1 ke versi server: 3.23.46-nt
Ketik 'bantuan;' atau 'h' untuk bantuan. Ketik 'c' untuk menghapus buffer.
mysql>
Catatan: Tidak ada kata sandi yang ditetapkan untuk mysql saat ini Untuk mencegah orang lain memasuki database Anda, silakan atur kata sandi untuk mysql. Untuk operasi tertentu, silakan merujuk ke mysql
Dokumentasi Tiongkok.
Pada titik ini, mysql berhasil diinstal!
6. Instal driver MySQL kelas jdbc
Buka zip paket driver jdbc dan salin folder org di dalamnya ke lokasi di mana jsp dapat ditemukan. Ini bisa berupa direktori root common/kelas kucing jantan
foldernya, atau bisa juga di bawah kelas website jsp WEB-INF/class/. Sehingga kelas yang relevan dapat ditemukan saat driver dimuat. Atau tambahkan jalur paket jdbc ke variabel classpath.
7. Konfigurasi terintegrasi Tomcat dan Apache
Tomcat hanyalah sebuah wadah yang digunakan untuk mengurai file *.jsp. Ini bukan server. Kemampuannya untuk mengurai file htm/html statis jauh lebih rendah daripada apache.
Setelah integrasi, apache digunakan untuk mengurai halaman web statis pada port yang sama, dan ketika halaman web *.jsp ditemukan, halaman tersebut diserahkan ke Tomcat untuk diurai.
Langkah 1: Salin mod_jk.dll ke folder modul di direktori root Apache.
Langkah 2: Konfigurasikan APACHE
untuk membuka confhttpd.conf di direktori root Apache
dan tambahkan pernyataan berikut:
#-------------------------- ------ -------------
#menghubungkan ke kucing jantan menggunakan ajp13
LoadModule jk_module modul/mod_jk.dll
JkWorkersFile "d:/server/Tomcat/conf/workers.properties"
JkMount /servlet/* ajp13
JkMount /*.jsp ajp13
#------------------------------------------------ - ---
Catatan: Arti dasar dari pernyataan di atas adalah:
Satu baris loadModule: Muat modul perpustakaan tautan dinamis mod_jk.dll untuk berkomunikasi dengan kucing jantan
jkWorkersFile: Menunjukkan lokasi file terkait pekerja Tomcat.properties saat bekerja
jkMount: Dua baris menunjukkan bahwa ketika *.jsp dan servlet ditemukan, mereka diserahkan ke protokol ajp13 dan kemudian diteruskan ke Tomcat untuk diproses.
Langkah 3: Buat file pekerja.properties. Buat file pekerja.properties di conf direktori root Tomcat.
pekerja.Tomcat_home=d:serverTomcat
pekerja.java_home=d:serverj2sdk1.4.0
ps=
# pekerja.daftar=ajp13
pekerja.daftar=ajp12,ajp13
pekerja.ajp12.port=8007
pekerja.ajp12.host=localhost
pekerja.ajp12.type=ajp12
pekerja.ajp12.lbfactor=1
pekerja.ajp13.port=8009
pekerja.ajp13.host=localhost
pekerja.ajp13.type=ajp13
pekerja.ajp13.lbfactor=1
pekerja.loadbalancer.type=lb
pekerja.loadbalancer.balanced_workers=ajp12, ajp13
pekerja.dalam proses.type=jni
pekerja.inprocess.class_path=$(workers.tomcat_home)$(ps)kelas
pekerja.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)jaxp.jar
pekerja.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)parser.jar
pekerja. inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)jasper.jar
pekerja.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$ (ps)servlet.jar
pekerja.inprocess.class_path=$(workers.Tomcat_home)$(ps)common$(ps)lib$(ps)webserver.jar
pekerja.inprocess.class_path=$(workers.java_home)$(ps )lib$(ps)tools.jar
pekerja.inprocess.cmd_line=-config
pekerja.inprocess.cmd_line=$(workers.tomcat_home)/conf/jni_server.xml
pekerja.inprocess.cmd_line=-pekerja
rumahan.inprocess.cmd_line=$ (pekerja.tomcat_home)
pekerja.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll
pekerja.inprocess.stdout=$(workers.tomcat_home)$(ps)inprocess.stdout
pekerja.inprocess.stderr=$(workers.tomcat_home)$(ps)inprocess.stderr
pekerja.inprocess.sysprops=tomcat.home=$( pekerja.tomcat_home)
Perhatikan bahwa pada baris pertama dan kedua file di atas, isi direktori terkait Tomcat dan jdk.
Langkah 4: Konfigurasikan file server.xml di bawah tomca/conf. Ini adalah file konfigurasi utama Tomcat.
1. Pengaturan direktori virtual:
Temukan yang berikut ini:
<Nama host="localhost" debug="0" appBase="/webapps"
unpackWARs="benar" autoDeploy="benar">
Ubah menjadi:
<Nama host="localhost" debug="0" appBase="d:/server/www"
unpackWARs="benar" autoDeploy="benar">
Buatlah direktori home Tomcat d:serverwww.
Temukan yang berikut ini:
<Jalur konteks="contoh" docBase="/contoh" debug="0"
dapat dimuat ulang="benar" crossContext="benar">
Ubah menjadi
<Jalur konteks="" docBase="/" debug="0"
dapat dimuat ulang="benar" crossContext="benar">
Pemahaman saya tentang ini adalah jsp di direktori root Tomcat harus digunakan sebagai host virtual.
2. Atur port pendengaran Tomcat dan temukan konten berikut:
<Konektor className="org.apache.coyote.tomcat4.CoyoteConnector"
port="8080" minProcessors="5" maxProcessors="75"
aktifkanLookups="benar" redirectPort="8443"
terimaHitung = "100" debug = "0" connectionTimeout = "0"
gunakanURIValidationHack="false" nonaktifkanUploadTimeout="benar" />
Port defaultnya adalah 8080, tetapi semua orang mengetahuinya Yang terbaik adalah memodifikasinya. Misalkan diubah menjadi: 8123, maka sebagai berikut:
<Konektor className="org.apache.coyote.tomcat4.CoyoteConnector"
port="8123" minProcessors="5" maxProcessors="75"
aktifkanLookups="benar" redirectPort="8443"
terimaHitung = "100" debug = "0" connectionTimeout = "0"
gunakanURIValidationHack="false" nonaktifkanUploadTimeout="benar" />
3. Temukan port 8009 berikut. Ini sangat penting. Tomcat dan Apache berkomunikasi satu sama lain melalui 8009. Jika bagian berikut dikomentari oleh <!---->, pastikan untuk menghapus <!----> .
<!-- Tentukan Konektor Coyote/JK2 AJP 1.3 pada port 8009 -->
<Konektor className="org.apache.coyote.tomcat4.CoyoteConnector"
port="8009" minProcessors="5" maxProcessors="75"
aktifkanLookups="benar" redirectPort="8443"
terimaHitung = "10" debug = "0" connectionTimeout = "0"
gunakanURIValidationHack="false"
protokolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/>
Langkah 5: Konfigurasikan file conf/web.xml Tomcat:
Mirip dengan konfigurasi halaman kesalahan 404 di Apache, tambahkan konten berikut sebelum baris </web-app> terakhir:
<halaman kesalahan>
<kode kesalahan>404</kode kesalahan>
<lokasi>/error/noFile.htm</location>
</halaman kesalahan>
<halaman kesalahan>
<tipe-pengecualian>java.lang.NullPointerException</tipe-pengecualian>
<lokasi>/error/error.jsp</lokasi>
</halaman kesalahan>
<error-page></error-page> pertama adalah halaman berorientasi kesalahan dari halaman 404 not found jsp, sehingga ketika terjadi kesalahan 404,
Halaman web diarahkan ke /error/noFile.htm Anda juga dapat menggunakan metode serupa untuk menambahkan kode kesalahan lain ke halaman.
Yang berada di antara <error-page></error-page> kedua diarahkan ke halaman error /error/error.jsp ketika java.lang.NullPointerException terjadi di halaman web jsp. Maka Anda perlu menambahkan konten berikut ke halaman jsp:
<%@ halaman errorPage="/error/error.jsp" %>
Program halaman kesalahan error.jsp yang khas ditulis sebagai berikut:
<%@ halaman contentType="text/html;charset=GB2312"%>
<%@ halaman isErrorPage="benar"%>
<html>
<head><title>Halaman kesalahan</title></head>
<body>
Ada yang tidak beres:</p> Pesan kesalahan: <%= pengecualian.getMessage() %><br>
Stack Trace adalah: <pre><font color="red"><%
java.io.CharArrayWriter cw = java.io.CharArrayWriter();
java.io.PrintWriter pw = new java.io.PrintWriter(cw,true);
pengecualian.printStackTrace(pw);
keluar.println(cw.toString());
%></font></pre>
</tubuh>
</html>
Ketika NullPointerException terjadi, kucing jantan akan mengimpor halaman web ke error.jsp dan mencetak pesan kesalahan.
Langkah kelima terutama untuk pertimbangan keamanan. Dalam keadaan normal, jika halaman web tidak dapat ditemukan, kesalahan 404 atau kesalahan program jsp akan terjadi pada klien
Informasi serupa dengan yang berikut ini akan dicantumkan (dengan mengambil contoh kucing jantan, resin juga serupa):
Status HTTP 404 - /sdags.jsp
------------------------------------------ --------------------- -------------------------------------
ketik pesan Laporan status
/sdags.
deskripsijsp
Sumber daya yang diminta (/sdags.jsp) tidak tersedia.
--------------------------------------------------- -------------------------------
Apache Tomcat/5.0.19
Dengan cara ini, versi server akan dilihat oleh orang lain. Jika konfigurasi pada langkah 5 selesai, situasi ini tidak akan terjadi.
Langkah 6: Konfigurasikan file httpd.conf
Metode ini menetapkan direktori root Tomcat dan Apache ke direktori yang sama, tetapi harus membatasi akses pelanggan ke beberapa file dalam direktori, seperti menyimpan kelas
web-inf, tambahkan kode berikut di bawah httpd.conf:
#tolak akses ke WEB-INF
<Direktori ~ "/WEB-INF/">
Perintah izinkan, tolak
Tolak dari semua
</Direktori>
Dengan cara ini, ketika mencoba mengingat http://localhost/web-inf/ , Apache akan menolak.
Pada titik ini, integrasi Tomcat dan Apache selesai.
Letakkan halaman web jsp di bawah d:serverwww, misalnya:
<html>
<h1>Tes JSP<hr>
<%out.println("Halo Dunia!");%>
</html>
Simpan sebagai index.jsp, masukkan http://localhost:8123/index.jsp di IE
jika muncul
Halo Dunia!
Baru saja dijelaskan bahwa Tomcat berjalan normal, masukkan http://localhost/index.jsp di IE, jika muncul juga
Halo Dunia!
Selamat! Integrasi berhasil. Anda telah mengambil langkah besar dalam perjalanan jsp yang panjang dan sulit~!
Saya menyelesaikan artikel integrasi di atas dengan tergesa-gesa, dan mungkin ada beberapa kesalahan. atau beberapa aspek yang tidak dipertimbangkan dengan baik, tetapi secara keseluruhan seharusnya baik-baik saja
Ini masalah besar. Saya berhasil mengintegrasikannya menggunakan metode ini berulang kali. Jika Anda memiliki pertanyaan, Anda dapat menghubungi saya langsung.
burung bulan: surat:[email protected]
http://blog.csdn.net/jangill/archive/2007/03/18/1532857.aspx