Modul Sebagai Subdomain Pada Zend Framework

Pada Zend Framework kita bisa memisahkan aplikasi dalam beberapa modul. Hal ini ditujukan untuk memudahkan kita dalam mengatur kode program. Agar kode program lebih terstruktur dan jelas fungsinya.

Dalam kasus tertentu kita ingin membuat modul tersebut diakses sebagai subdomain. Pada Zend Framework ini bisa dilakukan dengan menggunakan Zend_Controller_Router_Route_Hostname. Jadi subdomain tersebut dianggap sebagai modul, dan Zend Framework akan menggunakan kode program yang ada pada modul tersebut.

Untuk menggunakan Zend_Controller_Router_Route_Hostname, pastikan subdomain tersebut menggunakan DocumentRoot folder yang sama dengan domain. Karena file - file yang digunakan adalah sama, hanya penanganannya saja yang berbeda nantinya.

Kemudian, buat modul baru pada aplikasi kita. Sebagai contoh, kita ingin membuat modul mobile akan ditangani oleh subdomain mobile.

> zf create module mobile

Buat IndexController pada modul mobile, untuk menerima request dari modul mobile.

> zf create controller Index index-action-included=1 mobile

Karena Zend_Controller_Router_Route merupakan salah satu resource yang tersedia pada Zend_Application_Resource maka untuk membuat konfigurasi router, cukup dengan menambahkan beberapa baris berikut pada file application/configs/application.ini

resources.router.routes.mobile.type = "Zend_Controller_Router_Route_Hostname"
resources.router.routes.mobile.route = ":module.domain"
resources.router.routes.mobile.defaults.module = "mobile"
resources.router.routes.mobile.chains.index.type = "Zend_Controller_Router_Route"
resources.router.routes.mobile.chains.index.route = ":controller/:action/*"
resources.router.routes.mobile.chains.index.defaults.controller = "index"
resources.router.routes.mobile.chains.index.defaults.action = "index"

Sesuaikan ":module.domain" dengan nama domain. Jika domain adalah example.com, maka ganti ":module.domain" dengan ":module.example.com". Setelah itu coba akses subdomain tersebut dari web browser. Untuk lebih memastikan bahwa modul mobile yang digunakan, silahkan ganti isi file application/modules/testrouter/views/scripts/index/index.phtml dengan text yang menunjukkan bahwa file tersebeut berada di modul mobile. Contohnya, "Mobile". Sehingga, jika konfigurasi yang dibuat sukses maka web browser akan menampilkan "Mobile".

Comments

Kirim Komentar

Tidak akan dipublikasikan
  • Alamat web dan email dirubah menjadi hyperlink secara otomatis
  • Tag HTML yang diizinkan: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Baris baru maupun paragraph dipisahkan secara otomatis

Informasi lebih lanjut tentang format pesan