Pengenalan XAMPP

XAMPP adalah AMPP fitur lengkap (Apache MySQL, PHP, Perl) paket yang merupakan salah satu non-komersial middleware beberapa tumpukan AMPP tersedia di Linux.  Dengan integrasi yang ketat, XAMPP memungkinkan untuk menjalankan apa-apa dari halaman rumah pribadi untuk situs produksi fitur lengkap (meskipun hanya untuk tujuan pembangunan; XAMPP tidak dimaksudkan untuk digunakan pada server produksi karena masalah keamanan).

 XAMPP benar-benar bersinar dalam bidang berikut:

  • Sangat mudah untuk menginstal dan mensetup.
  • Ini berisi beberapa paket yang berguna yang membuat mudah untuk melakukan hal-hal seperti menghasilkan laporan lalu lintas dan mempercepat konten PHP.
  • Telah dites secara menyeluruh pada SUSE, Red Hat, Mandrake, dan Debian Linux distribusi, serta pada Windows ® dan Solaris.

Mari kita mulai dengan melihat paket-paket default yang datang dengan XAMPP.

Paket dasar termasuk sistem, pemrograman, dan perangkat lunak server:

  • Apache Web server yang terkenal
  • MySQL, sebuah, baik bebas, open source database
  • PHP, bahasa pemrograman (dalam versi 4.3.8 dan 5.0.1 pada saat tulisan ini)
  • Perl, bahasa pemrograman
  • Proftpd, server FTP
  • OpenSSL, untuk dukungan lapisan soket aman

XAMPP termasuk paket grafis yang istimewa sebagai berikut:

  • GD, itu “Graphics Draw” perpustakaan
  • libpng, perpustakaan referensi resmi PNG
  • library libjpeg, yang JPEG resmi referensi perpustakaan
  • ncurses, karakter grafis perpustakaan

 Dan apa yang akan terpadu stack tanpa beberapa paket database seperti:

  • dbm library gdbm, pelaksanaan GNU dbm library standar UNIX ®
  • SQLite, suatu, sangat kecil nol-konfigurasi mesin database SQL
  • FreeTDS, database perpustakaan yang memberikan program Linux UNIX dan kemampuan untuk berbicara dengan Microsoft ® SQL dan Sybase database

Untuk pengembangan XML, XAMPP adalah sebagai berikut:

  • sebuah perpustakaan XML parser
  • Salbotron, sebuah toolkit XML
  • libxml, sebuah XML parser C dan toolkit untuk GNOME

Untuk pengembangan PHP, XAMPP adalah sebagai berikut:

  • PEAR, PHP perpustakaan
  • Kelas pdf yang menghasilkan dokumen PDF yang dinamis dengan PHP
  • TURCK MMCache, sebuah enhancer PHP kinerja

Dan akhirnya, XAMPP menunjukkan fleksibilitas dengan termasuk paket berikut:

  • zlib, perpustakaan kompresi
  • mod_perl, yang embeds juru bahasa Perl persisten di Apache
  • Gettext, sebuah toolset yang membantu paket-paket GNU dalam memproduksi pesan multi-bahasa
  • mcrypt, program enkripsi
  • Ming, Flash (SWF) Perpustakaan output
  • Freetype2, mesin font software
  • IMAP C-Client, sebuah program mail API

Sekarang mari kita bicara tentang menginstal XAMPP.


Untuk menginstal XAMPP, download biner terbaru dari situs Apache Web Teman (lihat Sumberdaya untuk link). Untar it to /opt using the following command: Untar ke / opt dengan perintah berikut:

tar xvfz xampp-linux-1.4.7.tar.gz -C /opt

Setiap instalasi sebelumnya yang ada di / opt telah ditimpa. Jika Anda menjalankan versi lama XAMPP dan tidak ingin men-download seluruh paket lagi, Apache Teman memiliki paket upgrade yang tersedia untuk di-download.

Sekarang semuanya terpasang, mari kita mulai daemon baru. Ubah direktori kerja saat ini Anda ke / opt / lampp ( cd /opt/lampp ) dan masukkan berikut ini:

./lampp start

Anda harus melihat:

Starting XAMPP for Linux 1.4.7...
XAMPP: Starting Apache with SSL (and PHP5)...
XAMPP: Starting MySQL...
XAMPP: Starting ProFTPD...
XAMPP for Linux started.

XAMPP is now up and running. XAMPP sekarang berdiri dan berjalan. Cara terbaik untuk memverifikasi ini adalah dengan membuka browser dan ketik localhost di address bar dan tekan tombol Enter. Anda harus diarahkan ke halaman XAMPP menyambut.

XML error: gambar tidak ditampilkan karena lebar lebih besar daripada maksimum 580 piksel. Harap mengurangi Lebar gambar.

 Klik link Status di navigator kiri untuk mengetahui bahwa layanan yang diperlukan sudah mulai dengan benar. Jika semuanya baik, Anda akan melihat halaman berikut:

 XML error: gambar tidak ditampilkan karena lebar lebih besar daripada maksimum 580 piksel. Harap mengurangi Lebar gambar.

 Congratulations! Selamat! Anda baru saja menginstal dan mengatur lingkungan AMPP pembangunan sepenuhnya bekerja. Sekarang mari kita menginstal aplikasi sederhana untuk mendemonstrasikan bagaimana Anda dapat menggunakan lingkungan.


Untuk memanfaatkan fitur dasar XAMPP, Anda memerlukan aplikasi sederhana. Aplikasi terbaik akan menjadi salah satu yang menggunakan database back end; sebuah database yang relatif sederhana yang berisi satu meja akan baik-baik.

Database test akan berisi satu tabel dengan satu kolom. Mari kita ikuti (komputer) tradisi kuno program pengujian dan rencana untuk meja kami untuk memegang rekor tunggal “Hello World!”. Kami akan mengakses database menggunakan kedua Perl dan PHP script. Kedua script akan mengakses database, mengambil baris tunggal dan keluaran ke layar.

Database kami akan dibuat dan dikelola dengan menggunakan phpMyAdmin, sebuah alat berbasis web yang sangat baik administrasi MySQL yang ditulis dalam PHP. Memiliki antarmuka pengguna yang luar biasa dan memungkinkan Anda untuk melakukan banyak hal yang beragam kompleksitas, mulai dari membuat / menjatuhkan / mengubah database dan tabel data ekspor, kunci mengelola, dan file SQL pengolahan. phpMyAdmin is a great tool because: phpMyAdmin adalah alat yang hebat karena:

  • Ini membantu pemula membiasakan diri dengan MySQL tanpa harus berurusan dengan apa yang bisa menakutkan antarmuka baris perintah.
  • Hal ini memungkinkan pengguna tingkat lanjut untuk melakukan tugas yang lebih sederhana dan rutin dengan cepat dan mudah.
  • Ini berguna untuk berbagai kesempatan saat Anda ingin memberikan hak istimewa seseorang database administrasi tanpa membiarkan mereka akses shell Mahakuasa.

Untuk membuat database test di phpMyAdmin:

  1. Pergi ke halaman awal XAMPP (localhost).
  2. Pilih phpMyAdmin di navigator kiri pada menu Peralatan.
  3. Dalam bidang Buat database baru di halaman rumah phpMyAdmin, masukkan hello_world dan klik Buat.

Sekarang Anda harus membuat tabel dalam database ini dan menentukan berapa banyak kolom tabel harus berisi (bidang analog dengan kolom). Mari kita sebut meja kami “hello_table” dan mengandung satu bidang untuk terus merekam kami dari “Hello World!”.  Masukkan hello_table di bidang teks Nama dan masukkan 1 di bidang teks Fields.  Setelah selesai, klik Go.

Sekarang saatnya untuk melakukan langkah terakhir dari pembuatan database: pilih nama dan definisi tipe data untuk kolom kita.  itu tongkat Mari dengan halo “tema” dan nama kolom kita “hello_column”; masukkan hello_column di bidang teks Lapangan.

Dalam kolom kami, jenisnya harus jenis char dengan panjang 12 (panjang dari string “Hello World!”). The default type varchar is sufficient. The tipe varchar default sudah cukup. Dalam bidang teks Panjang Nilai / samping Jenis, masukkan 12 untuk panjang maksimum 12 karakter. Jangan khawatir tentang seluruh bidang pada halaman ini. Cobalah dan klik Simpan.

Jika semua telah dilakukan dengan benar, Anda akan melihat hal berikut:

XML error: gambar tidak ditampilkan karena lebar lebih besar daripada maksimum 580 piksel. Silakan mengurangi Lebar gambar.

 Sekarang mari kita masukkan catatan “Hello World!”. Klik tab Sisipkan dan masukkan “Hello World!”  di bidang teks Nilai. Drop-down list Fungsi bisa ditinggalkan sendirian dalam kasus ini. Klik Lanjutkan untuk memasukkan “Hello World!” merekam dalam database tersebut.

Untuk mengkonfirmasi bahwa catatan itu dimasukkan berhasil, klik tab Browse. “Anda hello dunia” daftar harus ditampilkan.

Sekarang bagian belakang adalah membuat dan menjalankan, saatnya untuk menangani bagian scripting. Kami akan gunakan dua skrip, satu di Perl dan satu di PHP. Kami satu-satunya persyaratan untuk setiap script akan menjadi salah satu koneksi database, satu database akses, dan output ke layar diambil dari baris.

require_once 'DB.php'; // must be included in any script that uses PEAR::DB require_once 'DB.php'; / / harus disertakan dalam setiap script yang menggunakan PEAR:: DB

// it is a huge security risk to store your database connection information / / Ini adalah resiko keamanan yang sangat besar untuk menyimpan informasi koneksi database Anda
// in the same file as your code. / / Dalam file yang sama sebagai kode Anda. We have done it here solely for the purpose Kami telah melakukannya di sini semata-mata untuk tujuan
// of this example. / / Contoh ini. Please store your database connection information in another Harap menyimpan informasi koneksi database Anda di lain
// file that is not in your document root directory and adequately protected. / / File yang tidak ada dalam direktori akar dokumen dan dilindungi secara memadai.
// database connection information / / Koneksi database informasi

$db_host    = "localhost";     // hostname of the database server db_host $ = "localhost"; / / hostname dari server database
$db_user    = "root";           // database user's username $ db_user = "root"; username / / user database
$db_pass    = "";          // database user's password, nothing by default $ Db_pass = ""; password / / database user, tidak ada secara default
$db_name    = "hello_world";    // the name of the database to connect to DB_NAME $ = "hello_world"; / / nama database untuk menyambung ke
$db_type    = "mysql";          // the type of database server. db_type $ = "mysql"; / / jenis database server.

// your data source name string. / / Nama sumber data string. This contains the connection Ini berisi sambungan
// information for your database. / / Informasi untuk database Anda.
$dsn = "$db_type://$db_user:$db_pass@$db_host/$db_name"; DSN $ = "db_host $ db_type: / / db_pass $ db_user: $ @ $ / $ DB_NAME";

// creates a database connection object or a database error / / Membuat objek koneksi basis data atau database error
// object based on the success of the database connection. / / Object berdasarkan keberhasilan koneksi database.
$db = DB::connect($dsn, TRUE); $ Db = DB:: menghubungkan ($ DSN, TRUE);

// if an error was encountered, the script exits with an error message / / Jika kesalahan itu ditemukan, pintu keluar script dengan pesan kesalahan
if (DB::isError($db)) { if (DB:: isError ($ db)) (
    die($db->getMessage()); die ($ db-> getMessage ());
} )
// SQL query that you wish to use to query the database / / SQL query yang ingin Anda gunakan untuk query database
$sql = "SELECT * FROM hello_table"; $ Sql = "SELECT * FROM hello_table";

// query the database, store result in $result / / Query database, hasilnya toko di $ hasil
$result = $db->query($sql); $ Hasil = query db-> $ ($ sql);

// exits with an error message if the query was unsuccessful / / Keluar dengan pesan kesalahan jika query tidak berhasil
if(DB::isError($result)){ if (DB:: isError ($ hasil)) (
		 die($result->getMessage()); mati ($ hasil-> getMessage ());
} )
// fetch rows from the database until no more rows exist. / / Mengambil baris dari database hingga tidak ada baris.
// output the "hello_column" field of each row to the screen. / / Output hello_column "" bidang setiap baris ke layar.
// once no more rows exist, exit with an error message. / / Sekali tidak ada baris, keluar dengan pesan kesalahan.
while($row = $result->fetchRow(DB_FETCHMODE_OBJECT)){ while ($ baris = fetchRow hasil-> $ (DB_FETCHMODE_OBJECT)) (
		 if(DB::isError($row)){ if (DB:: isError ($ baris)) (
		 		 die($row->getMessage()); mati ($ row-> getMessage ());
		 } )
		 print("<H1>$row->hello_column</H1>"); cetak ("<h1> $ row-> hello_column </> H1");
		 $result->free(); bebas hasil-> $ ();
} )
$db->disconnect(); //disconnect from the database $ Db-> putuskan (); / / lepaskan dari database

Setiap skrip terhubung ke database, mengambil sebuah baris data, dan output yang baris ke layar. regardless. PHP mengakses database dilakukan menggunakan PEAR:: DB, sebuah lapisan abstraksi database berguna yang memungkinkan kode database-akses yang sama untuk digunakan terlepas dari apa yang database diimplementasikan. Sayangnya XAMPP belum datang dengan lapisan abstraksi database untuk Perl.

Jadi, sekarang kita memiliki semua yang kita butuhkan.  Database kami adalah membuat dan menjalankan dan kami memiliki dua skrip yang mengujinya. Semua kita harus lakukan sekarang adalah menempatkan script di tempat yang tepat. Mari kita lihat bagaimana XAMPP dibaringkan di hard drive di properti 2 .

Direktori bahwa kepentingan kami di sini adalah / opt / lampp / htdocs /, Apache direktori Dokumen. Setiap halaman Web dan asosiasi file yang ingin Anda akan ditampilkan bila seseorang mengakses alamat web root situs Anda ditempatkan di sini. Karena kita bisa melihat halaman selamat datang XAMPP, direktori ini sudah memiliki beberapa file di dalamnya. Mari kita mengintip cepat pada daftar direktori untuk mengkonfirmasi ini (tipe ls /opt/lampp/htdocs ):

drwxr-xr-x 2 root root 4096 Jan 24 2003 apache
-rwxr-xr-x 1 nobody root 163 Oct 31 2003 index.html
drwxr-xr-x 2 nobody root 4096 Sep 12 21:54 webalizer
drwxr-xr-x 5 root root 4096 Jun 15 06:24 xampp

Seperti yang dapat Anda lihat, ada material di sini. Mari kita membuat direktori kita sendiri disebut hello_world ( mkdir hello_world ) di mana untuk menyimpan script kita. Mulai sekarang, Anda dapat mengakses semua bahan dalam direktori hello_world dengan mengetikkan localhost/hello_world .  Sekarang, Anda menyimpan dua skrip ke direktori tersebut. You are done! Anda selesai!

Untuk menguji aplikasi, pergi ke browser pilihan Anda, dan masukkan localhost/hello_world . Anda harus melihat:
Congratulations! Selamat! Anda telah membuat sebuah aplikasi pada XAMPP.


Tujuan dari XAMPP adalah menjadi lingkungan pengembangan. Hal ini dikonfigurasi untuk memberikan programmer pemerintahan bebas atas toolset tanpa pembatasan. Sebagai hasil dari kebebasan bergerak, instalasi default XAMPP sangat tidak aman. Sebagai contoh, hampir tidak ada login yang diperlukan untuk apa-apa.

Untuk XAMPP versi 0.9.5 dan selanjutnya, Anda dapat daging sapi sampai keamanan dengan menjalankan perintah:

/opt/lampp/lampp security

Anda akan diminta dengan berbagai pernyataan bahwa catatan kegelisahan yang ada, dan Anda akan diberi pilihan apakah akan memperbaiki rasa tidak aman itu. Meskipun hal ini membuat Anda instalasi XAMPP lebih aman, Anda masih harus menghindari berjalan XAMPP pada server produksi. Listing 3 illustrates the security prompts: Kode 3 menggambarkan keamanan petunjuknya:

XAMPP: Quick check keamanan ...
XAMPP: XAMPP halaman Anda TIDAK dijamin dengan sandi.
XAMPP: Apakah Anda ingin mengatur password? [yes] yes [Yes] yes
XAMPP: Password:
XAMPP: Password (lagi):
XAMPP: Password proteksi aktif. Silakan menggunakan 'lampp' sebagai nama pengguna!
XAMPP: MySQL dapat diakses melalui jaringan.
XAMPP: normaly itu tidak dianjurkan. Apakah Anda ingin saya menonaktifkannya? [yes] yes [Yes] yes
XAMPP: Berbalik off.
XAMPP: Menghentikan MySQL ...
XAMPP: Starting MySQL... XAMPP: MySQL Mulai ...
XAMPP: The MySQL / phpMyAdmin pma pengguna tidak memiliki sandi set!
XAMPP: Apakah Anda ingin mengatur password? [yes] yes [Yes] yes
XAMPP: Password:
XAMPP: Password (lagi):
XAMPP: Setting MySQL pma password baru.
XAMPP: Setting phpMyAdmin pma password untuk yang baru.
XAMPP: MySQL tidak memiliki root passwort set!
XAMPP: Apakah Anda ingin mengatur password? [yes] yes [Yes] yes
XAMPP: Tuliskan password di suatu tempat untuk memastikan Anda tidak akan melupakannya!
XAMPP: Password:
XAMPP: Password (lagi):
XAMPP: Menetapkan password root MySQL yang baru.
XAMPP: Menetapkan password root phpMyAdmin kepada yang baru.
XAMPP: The FTP password masih set ke 'lampp'.
XAMPP: Apakah Anda ingin mengubah password? [yes] yes [Yes] yes
XAMPP: Password:
XAMPP: Password (lagi):
XAMPP: Reload proftpd ...
XAMPP: Done.

 Jadi, Anda instalasi XAMPP telah berdiri dan berjalan selama beberapa minggu dan Anda sudah cukup mengumpulkan satu set data yang cukup besar yang Anda tidak ingin berada pada risiko dari kecelakaan hard drive. Apa yang Anda lakukan backup?

 Hal ini cukup sederhana dengan XAMPP. Ubah direktori kerja saat ini Anda ke / opt / lampp ( cd /opt/lampp ) dan ketik perintah berikut:

./lampp backup

Anda akan ingin untuk menambahkan password root MySQL Anda jika Anda telah diatur ke akhir perintah.  Anda kemudian akan melihat hal berikut:

Backing up databases...
Backing up configuration, log and htdocs files...
Calculating checksums...
Building final backup file...
Backup finished.
Take care of /opt/lampp/backup/xampp-backup-15-09-04.sh

Untuk mengembalikan cadangan Anda, jalankan perintah berikut sebagai root:

sh backupfilename

Anda akan lihat berikut ini jika semua berjalan lancar:

Checking integrity of files...
Restoring configuration, log and htdocs files...
Checking versions...
Installed: XAMPP 1.4.7
Backup from: XAMPP 1.4.7
Restoring MySQL databases...
Restoring MySQL user databases...
Backup complete. Have fun!
You may need to restart XAMPP to complete the restore.

Restart XAMPP ( cd /opt/lampp, ./lampp restart ), dan mengembalikan data Anda harus siap tersedia.


Apakah tumpukan solusi terintegrasi pernah sepenuhnya bersaing dengan solusi J2EE masih harus dilihat, tetapi rilis baru dari PHP 5.0 (Selain utama termasuk orientasi obyek penuh) ditambah dengan pertumbuhan yang cepat dari database MySQL menunjukkan bahwa solusi terintegrasi AMPP tumpukan menjadi lebih populer di antara para pengembang. Ini berarti bahwa tumpukan middleware open source seperti XAMPP mungkin memiliki beberapa kamar siku di bagian bawah pasar perangkat lunak.

  • Download XAMPP di Apache Friends , sebuah organisasi nirlaba yang mempromosikan Web server Apache dan memiliki informasi XAMPP terbaru dan rilis.
  •  Cari luas sumber PHP di developerWorks.
  • Road untuk pemrograman yang lebih baik seri (developerWorks) adalah sangat baik tangan-pada seri untuk mempertajam perspektif Perl Anda.  Untuk lebih lanjut tentang Perl, cari situs developerWorks.
  • Kedua artikel, Menghubungkan Aplikasi PHP ke Apache Derby (developerWorks, September 2004) dan Mengembangkan aplikasi Perl dengan Apache Derby (developerWorks, Oktober 2004) adalah harus dibaca dan pengembang aplikasi PHP Perl.
  •  Proyek phpMyAdmin berisi banyak informasi yang besar serta download dari administrasi MySQL berbasis Web alat awesome.
  • Unix & Internet Security (O’Reilly & Associates, 1996) adalah sebuah referensi yang sangat baik pada semua aspek dari sistem keamanan dari manajemen pengguna untuk menyusun kebijakan keamanan.
  • PHP.net menawarkan fungsi perpustakaan online yang dicari adalah bantuan besar untuk menemukan informasi rinci pada metode PHP dan memburu membangun bahasa.
  • Perpanjangan PHP dan Aplikasi Repository (PEAR) menawarkan komponen yang membuat pemrograman PHP sederhana, termasuk yang populer PEAR:: DB .
  • Untuk bantuan dengan MySQL, yang manual MySQL referensi berisi informasi terperinci mengenai semua aspek dari database populer.
  • Kunjungi Proyek Apache HTTP Server untuk membangun terbaru dan informasi tentang populer http server yang paling Web.
  • Cari lebih banyak sumber daya untuk pengembang Linux di zona developerWorks Linux .
  • Tivoli® Access Manager, and Tivoli Directory Server, and explore how-to articles and tech support, in the Speed-start your Linux app section of developerWorks. -Biaya tidak ada versi trial Download produk middleware IBM yang berjalan pada Linux, termasuk WebSphere ® Studio Application Developer, WebSphere Application Server, DB2 Universal Database ®, Tivoli ® Manajer Akses, dan Tivoli Directory Server, dan menggali bagaimana-untuk artikel dan dukungan teknologi , dalam Speed-awal Anda Linux app bagian developerWorks.
  • Terlibat dalam komunitas developerWorks dengan berpartisipasi di blog developerWorks .
  • Browse buku tentang topik ini dan lainnya teknis.

Nils-Erik Frantzell saat ini mempelajari ilmu komputer di University of California, Santa Cruz.  kepentingan-Nya meliputi Linux, Web programming (khususnya PHP), jaringan, teknologi open source, dan mengotak-atik perangkat keras komputer. Dia menghabiskan waktunya jauh dari komputer cenderung untuk ikan karnivora sambil mendengarkan musik elektronik.

Sumber ; http://www.ibm.com/developerworks/linux/library/l-xampp/