Hosting beberapa tapak drupal
Terdapat banyak sebab mengapa pentadbir sistem atau pemaju boleh memilih untuk menjadi tuan rumah beberapa tapak pada pelayan yang sama dalam konfigurasi multisite. Sebagai contoh, seperti konfigurasi yang boleh:
- Membolehkan anda untuk membina persekitaran pembangunan yang cekap
- Membolehkan anda untuk mengadakan dan menguji tapak sebelum ia pergi awam
- Membolehkan anda menjalankan perisian yang berbeza di tapak yang sama
- Membolehkan perkongsian pangkalan kod tunggal di beberapa laman
- Leverage dikongsi hosting
- Membolehkan anda untuk menjalankan sama selamat (HTTP melalui Lapisan Soket Selamat [HTTPS]) dan standard (HTTP) laman web di pelayan yang sama
- Kemudahan pentadbiran pelayan
Tidak semua sebab-sebab ini, bagaimanapun, amat berkesan ditangani dengan ciri multisite Drupal ini. Artikel ini memberi tumpuan kepada hanya satu strategi: bagaimana untuk menggunakan Drupal terbina dalam sokongan multisite untuk membuat dan berkhidmat beberapa laman web dari satu contoh Drupal.
pertimbangan asas
Menggunakan sistem pengurusan kandungan Drupal (CMS) untuk membuat konfigurasi yang multisite mempunyai beberapa kelebihan yang nyata, salah satu yang adalah bahawa ia adalah mungkin konfigurasi yang paling mudah untuk menubuhkan dan mengekalkan. Lain adalah bahawa pertindihan data dapat dikurangkan kerana Drupal dipasang hanya dalam satu tempat pada pelayan anda. Akhir sekali, Drupal mempunyai banyak modul menyumbang yang boleh digunakan untuk menambah pengendalian multisite, menawarkan keupayaan maju untuk semua laman web dalam susunan. Gabungan ciri-ciri tambahan dan pentadbiran yang mudah akan menjadi rahmat bagi sesiapa yang ingin untuk menubuhkan dan mentadbir urusan multisite. Walau bagaimanapun, terdapat beberapa kelemahan untuk menggunakan konfigurasi seperti itu, dan dua khususnya patut mereka jelas menyebut: Keselamatan dan perkongsian.
Dengan laman web dalam pemasangan multisite berkongsi kod yang sama dan dengan itu fail yang sama. Akibatnya, sesiapa sahaja yang mendapat akses kepada sistem fail pelayan untuk salah satu laman web juga mempunyai akses kepada semua fail yang digunakan untuk semua laman web di bahawa pemasangan multisite. Oleh itu, dalam kes-kes di mana orang yang berbeza menguruskan laman web yang berbeza dalam perkiraan itu, ia mungkin tidak cukup selamat. Jika keselamatan antara laman web adalah isu utama, atau jika orang yang berbeza menguruskan pelbagai laman web, fungsi multisite Drupal terbina dalam tidak boleh menjadi penyelesaian yang terbaik. Sebaliknya, pertimbangkan dengan memberikan laman Drupal contoh tersendiri. Walaupun kelebihan pentadbiran lebih mudah bahawa mampu perkiraan multisite akan hilang, laman anda akan lebih dilindungi daripada kejadian yang tidak diingini.
Kedua kebimbangan - perkongsian - pusat di seluruh akses pangkalan data. Walaupun Multisites Drupal kita berkongsi kod sumber yang sama, mereka tidak berkongsi data pangkalan data sama. Oleh itu, nod, pengguna, dan komen dalam satu laman web tidak boleh diakses secara lalai daripada laman web lain. tingkah laku ini sebenarnya boleh dianggap sebagai satu perkara yang baik, tetapi dalam situasi di mana pentadbir mungkin menghendaki semua laman web yang berkongsi maklumat, ia boleh menjadi had untuk reka bentuk ciri multisite Drupal ini. Walau bagaimanapun, tempat yang manis untuk terbina dalam sokongan multisite Drupal adalah bahawa modul, tema, dan, walaupun sedikit, fail yang dimuat naik, boleh dikongsi di semua laman web. Di samping itu, fail yang sama atau adat boleh disimpan dalam folder yang berbeza sepadan dengan laman web yang berbeza dalam konfigurasi. Jika ia adalah penting bahawa semua kandungan dikongsi, pertimbangkan untuk menggunakan ciri multidomain, yang mudah disediakan oleh modul dengan nama yang sama.
Memasang Drupal untuk kegunaan multisite
Selepas memuat turun arkib Drupal (lihat topik yang berkaitan untuk pautan a), kandungan fail tersebut dan menyalin folder yang terhasil kepada akar dokumen daripada pelayan web anda. Tugas ini tidak sukar dengan pelanggan FTP yang sesuai; dengan Secure akses Shell (SSH) ke pelayan anda, tugas itu adalah lebih mudah. Hanya menjalankan arahan wget untuk memuat turun fail arkib daripada repositori, dan ekstrak untuk menghasilkan folder pemasangan Drupal. (Jika persekitaran pembangunan anda adalah tempatan, berdiri oleh untuk lebih banyak pilihan.) Namakan pemasangan folder / goodsite.
Tiga laman web yang berbeza akan dicipta untuk latihan ini; oleh itu, tiga pangkalan data yang berbeza diperlukan - satu untuk setiap laman web. Menggunakan phpMyAdmin dari Cpanel pelayan anda, tugas ini mudah dilakukan. Seterusnya, memasang rangka kerja tersebut. Dua tugas mesti dilakukan, bagaimanapun, sebelum menggunakan pelayar web anda untuk jalankan pemasang:
- Menyediakan Drupal dengan maklumat yang diperlukan tentang laman yang anda berniat untuk menjalankan.
- Lulus data konfigurasi khusus tapak dari Drupal untuk kesemua laman web.
Untuk mencapai tugas pertama, mencipta direktori khas bagi setiap laman web. Untuk kedua, cari fail tetapan dalam setiap direktori. Objektifnya adalah untuk menyediakan pemasangan satu induk dengan dua sub-tapak. Setiap sub-tapak berkongsi fail yang sama sebagai teras, tetapi masing-masing akan mempunyai URL sendiri yang berasingan dan pangkalan data. URL daripada lokasi yang akan diwujudkan ialah:
Memasang tuan rumah pertama
Selepas meletakkan kod sumber Drupal dalam akar dokumen dan telah mencipta pangkalan data MySQL, mula memasang tapak pertama dan domain induk.
Domain master
Nama domain induk adalah URL tempat tapak utama akan dicapai (dalam artikel ini, goodsite.com). Tujuan utama domain tuan adalah untuk menjadi tuan rumah asas pemasangan Drupal. Tidak kira sama ada domain ini digunakan sebagai salah satu tapak anda, jika ada sub-laman web yang gagal, URL mereka akan lalai untuk domain tuan; oleh itu, ia adalah idea yang baik bahawa laman web ini mengandungi maklumat yang berkaitan dengan sub-laman web, seperti maklumat kenalan.
Seperti yang dinyatakan, subfolder perlu diwujudkan dalam folder Drupal utama bagi setiap sub-tapak. Apa yang ramai akan membayangkan tugas yang paling sukar dalam pemasangan multisite Drupal adalah hanya rutin: Mari Drupal tahu apa laman web yang anda mahu untuk menjadi tuan rumah, dan hanya membuat subfolder untuk di kawasan-folder / tapak.
Dalam Drupal folder akar utama adalah direktori bernama / tapak. Jika anda telah ditadbir Drupal sebelum ini, anda tahu semua kod bukan teras patut tinggal di dalam folder ini. Dalam pemasangan lalai Drupal, folder / laman web yang mengandungi dua direktori. Pertama, memanggil semua /, adalah di mana anda perlu meletakkan tema yang dimuat turun dan modul. Semua / direktori adalah lokasi untuk maklumat dikongsi di semua laman web. Folder kedua, yang dinamakan default /, adalah di mana fail konfigurasi perlu disimpan, dan juga bukan teras dan adat tema dan modul. Drupal biasanya mencari pelbagai lalai / direktori untuk maklumat konfigurasi tapak melainkan jika diberitahu sebaliknya. Bagaimanapun, ambil perhatian bahawa ini adalah andaian yang generik, laman tunggal tuan rumah - tidak semestinya untuk pemasangan multisite.
Mewujudkan subfolder dan fail
Satu tip yang besar untuk membina multisite Drupal adalah bahawa selain daripada semua / dan default / folder, folder lain boleh diwujudkan dalam / tapak, dan Drupal akan memberikan mereka makna khas. Lebih khusus lagi, Drupal menganggap bahawa semua direktori lain yang dijumpai dalam / tapak folder mewakili nama hos atau corak nama hos.
Anda mencipta subfolder dalam corak / goodsite / tapak /
Bagi setiap sub-laman web, lengkapkan langkah berikut:
- Salin default.settings.php fail dari laman web / default kepada setiap folder sub-tapak dan menamakan semula settings.php.
- Gunakan CHMOD untuk menetapkan kebenaran pada settings.php ke 644, jika ia tidak kebenaran semasa.
- Untuk pemasangan Drupal, versi 6, membuat folder bernama fail di bawah setiap sub-tapak dan menggunakan CHMOD untuk mengubah kebenaran untuk 755.
Ini adalah folder di dalam yang Drupal mampu untuk menulis kandungan - biasanya, dimuat naik fail, imej imej, dikumpulkan Cascading Style Sheet (CSS), dan fail JavaScript. Fail-fail ini tidak disimpan dalam pangkalan data, tetapi dalam sistem fail, jadi anda mesti mempunyai direktori di mana fail-fail ini dapat tetap.
Secara lalai, Drupal kelihatan untuk fail subdirektori bernama / dalam senarai semua laman web. Dalam pemasangan Drupal lalai, folder ini akan berada dalam tapak / default / fail /.
Ini adalah folder di mana mana-mana modul khusus untuk yang sub-tapak tinggal. Mana-mana modul yang semua laman akan menggunakan harus tinggal di tapak / semua / folder modul.
Ini adalah di mana mana-mana tema yang unik itu sub-tapak diletakkan. Mana-mana tema yang semua laman akan menggunakan harus tinggal di tapak / semua / tema.
Sekarang, menunjukkan URL sub lokasi untuk pelayan web anda, jika mereka tidak diberikan oleh syarikat yang sama hosting. Jika anda menggunakan tuan rumah yang berbeza untuk pelbagai laman web, anda perlu menukar maklumat Domain Name System (DNS) (kedua-dua pendaftar dan syarikat-syarikat hosting akan dapat memberitahu anda bagaimana untuk berbuat demikian). Selepas itu, anda akan mempunyai untuk "meletak" bahawa domain di atas domain utama anda - dalam kes ini, goodsite.com. Dari sudut ini, anda mempunyai alternatif yang sedikit, yang lebih sukar yang melibatkan menggunakan apa yang dipanggil symlink. Tempat letak kereta adalah lebih mudah, tetapi; jadi dalam Cpanel anda, klik pada Domain terparkir. Menambah bettersite.com dan bestsite.com di New Nama Domain. dan kemudian klik pada Tambah Domain.
Mewujudkan Multisites
Terdapat beberapa cara untuk pergi dari sini, tetapi sekali lagi, mari kita mengambil jalan yang paling mudah: secara langsung memuatkan pangkalan data bagi setiap sub-laman web dengan jadual yang dibina dalam pemasangan laman web master. Untuk berbuat demikian, anda perlu membuat tempat pembuangan daripada jadual pangkalan data daripada pemasangan tapak tuan dan menyimpannya dalam negara. Kemudian, memuat naik fail ini dengan phpMyAdmin atau membukanya menggunakan editor kod. Untuk menggunakan pilihan kedua, melaksanakan tugas-tugas ini dalam phpMyAdmin:
Prosedur ini mengeluarkan semula jadual pangkalan data laman web master dalam pangkalan data sub-tapak.
Seterusnya, buka fail settings.php bagi setiap sub-tapak dan mencari baris berikut:
Menukar pangkalan data ini menghubungkan tali untuk mencerminkan parameter untuk pangkalan data sub-lokasi (nama pengguna, kata laluan, nama host, nama pangkalan data). Sekarang jika anda pergi ke bettersite.com, anda perlu mendapatkan standard "Selamat datang ke laman web Drupal baru anda", seperti yang ditunjukkan dalam Rajah 2. Ulangi langkah ini untuk semua laman tambahan.
Mewujudkan Multisites dari sub-domain
Terdapat satu lagi cara untuk dengan cepat membuat Multisites dengan terlebih dahulu memperincikan mereka sebagai sub-domain dari Cpanel. Dalam kaedah ini, walau bagaimanapun, anda perlu pada mulanya membuat folder untuk setiap laman web di bawah / goodsite / laman web, kali ini menggunakan konvensyen berikut (lihat Rajah 3):
Perhatikan bahawa folder sub-domain mesti mempunyai nama yang sama sebagai sub-domain sendiri. Seperti sebelum ini, meletakkan salinan default.settings.php dalam setiap folder sub-domain, menukar nama fail untuk settings.php. dan isu CHMOD untuk mengubah kebenaran untuk 644.
Sekarang, kembali ke Cpanel dan mewujudkan dua sub-domain:
Buat symlink
symlink ialah satu fail yang mengandungi rujukan kepada fail atau folder lain dalam bentuk laluan mutlak atau relatif dan dicipta menjejaskan resolusi nama jalan. Menggunakan mana-mana editor kod untuk membuat fail yang dipanggil symlink.php. dan kemudian menambah kod yang serupa kepada yang berikut:
Dalam kes ini, gambar tersebut akan kelihatan seperti ini:
Letakkan symlink ini dalam direktori utama laman utama, dan menjalankannya dari goodsite.com/symlink.php URL. Jika sintaks kod yang baik, anda akan dapat melihat halaman kosong; jika tidak, anda akan melihat mesej ralat. Tweak kod di dalam fail ini sehingga ia keluar dengan betul.
Konfigurasi .htaccess
Kini membuka fail .htaccess dalam mana-mana editor kod. Mencari baris berikut:
Buang tanda hash (#), dan tambah baris berikut sebelum menyimpan perubahan:
Berikut adalah apa yang .htaccess harus kelihatan seperti apabila selesai:
redirection ini membolehkan kedua-dua goodsite.com/bettersite dan bettersite.goodsite.com dihalakan semula ke tapak yang sama. Jika segala-galanya telah dilakukan dengan betul, anda akan dibawa ke laman pemasangan apabila anda mendapatkan sub-tapak URL bettersite.goodsite.com dan bestsite.goodsite.com.
Dengan semua laman web yang dipasang, ianya mudah dari Cpanel untuk mengaitkan bettersite.goodsite.com laman web menggunakan lencongan ke bettersite.com URL.
Multisite pada tuan rumah tempatan menjalankan Ubuntu
Menjalankan pemasangan multisite pada Ubuntu adalah sedikit lebih rumit daripada apa yang telah dilakukan setakat ini untuk hosting jauh. Satu pemasangan multisite boleh dengan mudah dikonfigurasikan menggunakan kaedah yang digariskan dalam bahagian berikut.
Buat folder tuan rumah baru
Mula dengan mewujudkan folder dipanggil goodsite dalam folder laman utama anda menggunakan kod berikut:
Hasilnya sepatutnya -> / home /
Sekarang menyalin semua fail Drupal anda ke dalam folder ini.
Sunting fail tuan rumah
Sunting fail tuan rumah dengan membuka tetingkap terminal dengan arahan berikut:
Anda kemudiannya boleh menambah apa-apa nama tapak dalam mysite.com format 127.0.0.1. Untuk contoh ini, tambah baris berikut:
Mengedit tapak tersedia
Sekarang pergi ke folder laman-ada untuk mencipta fail yang dipanggil goodsite.com menggunakan arahan berikut:
Arahan pertama pergi ke folder laman-ada itu; salinan perintah kedua fail lalai dan menamakan semula ia goodsite.com. Arahan ketiga membuka fail goodsite.com untuk mengedit. Tambah kod yang ditunjukkan dalam Penyenaraian 1 kepada fail.
Jimat goodsite.com, membolehkannya, dan kemudian muat semula Apache menggunakan arahan berikut:
Membuat folder sub-tapak
Mewujudkan sub-laman web anda dalam folder / tapak / home / [ubuntu nama log masuk anda] /goodsite/sites/bettersite.com, dan kemudian menambah settings.php ke folder baru. Jika anda telah dilayari ke laman web / direktori, menyalin fail settings.php dengan arahan berikut:
pemasangan menjalankan sub-tapak
Buka pelayar anda, kemudian taip bettersite.com. Anda akan dapat melihat halaman persediaan pemasangan. Membuat fail settings.php yang baca sahaja lagi untuk mengelakkan mesej keselamatan, kemudian berjalan pemasangan sub-tapak.
Seterusnya, membuat folder laman web dan menjalankan pemasangan untuk bestsite.com serta mana-mana sub-laman web lain yang disebut dalam konfigurasi tuan rumah anda.
modul multisite
Modul yang digunakan untuk melanjutkan fungsi pemasangan asas Drupal dan datang dalam pelbagai kategori, daripada pentadbiran kepada fungsi prestasi peningkatan yang sebenar. Beberapa modul boleh membantu dalam mewujudkan konfigurasi yang multisite atau serupa. Untuk maklumat mengenai cara untuk menggunakan modul ini, rujuk dokumentasi pemasangan untuk setiap modul.
Modul Akses Domain
Modul Akses Domain (lihat topik yang berkaitan untuk pautan) membolehkan penciptaan multisite menggunakan asas tunggal kod, pangkalan data pengguna yang dikongsi, dan sign-on tetapi dengan pangkalan data kandungan yang berbeza berkongsi. konfigurasi seperti ini adalah berbeza daripada apa yang telah kita lakukan dalam artikel ini. Akses Domain sebenarnya digambarkan sebagai satu set modul yang memudahkan menjalankan kumpulan laman dengan menggunakan satu kod asas Drupal dipasang di dalam pangkalan data dikongsi tunggal. Modul ini membolehkan kesemua laman web untuk berkongsi pengguna, kandungan dan tetapan jika mereka telah dipratatarajahkan untuk beroperasi dalam apa-apa cara. Modul Akses Domain menggunakan Sistem Akses Node Drupal untuk mewujudkan kandungan yang perlu disediakan pada setiap laman web dalam susunan multisite. Modul, tidak seperti modul multidomain lain, juga mengawal akses pengguna berdasarkan domain aktif pengguna adalah melihat, bukan atas dasar kumpulan atau laman web untuk mana pengguna berada.
The multisite modul Manager
Pengurus multisite (lihat topik yang berkaitan untuk pautan a) adalah satu modul menyumbang yang membolehkan penciptaan laman Drupal baru dari pangkalan laman Drupal tanpa perlu mengakses pangkalan data pemasangan. Secara lalai, laman web ini baru dipasang di dalam pangkalan data yang sama seperti pemasangan asas, tetapi dengan awalan yang berbeza. Jika tidak, jika pengguna semasa mempunyai kebenaran akses untuk mewujudkan pangkalan data, pemasangan mungkin boleh dilakukan di dalam pangkalan data itu.
kesimpulan
Artikel ini meneroka cara membuat konfigurasi Multisites menggunakan Drupal sebagai asas CMS. Anda memasang laman web master dan terletak sub-tapak dalam struktur direktori itu. Anda belajar bagaimana untuk menjalankan pemasangan multisite pada pelayan jauh dengan menggunakan kemudahan pentadbiran syarikat hosting anda menyediakan. Anda juga belajar bagaimana untuk membuat pemasangan multisite pada mesin tempatan - khususnya, pada komputer yang menjalankan Ubuntu Linux®. Artikel ini juga memperkenalkan dua modul Drupal yang boleh membantu anda dalam penciptaan kedua-dua konfigurasi multisite dan multidomain.