Aturan WordPress Juga Memiliki Pengecualian

apache wordpress

apache wordpressWordPress membuat langkah evolusioner besar ke depan dalam platform blogging, mendekatkannya ke sistem manajemen konten lengkap dengan pelacakan revisi, lebih banyak dukungan untuk menu kustom, dan – fitur yang paling menarik bagi saya – dukungan multi-situs dengan pemetaan domain.

Jika Anda bukan pecandu sistem manajemen konten, tidak apa-apa. Anda dapat melewati artikel ini. Tetapi untuk sesama ahli teknologi, kepala kode, dan ahli apache, saya ingin berbagi sesuatu yang menarik, dan sesuatu yang keren.

Multi-situs adalah fitur yang memungkinkan Anda menjalankan sejumlah situs web WordPress dengan satu instalasi WordPress. Jika Anda mengelola beberapa situs, itu bagus karena Anda dapat menginstal grup tema dan widget yang disetujui, dan mengaktifkannya untuk situs klien Anda. Ada beberapa kendala teknis untuk memetakan domain Anda, tetapi prosesnya tidak sulit.

Salah satu area masalah yang saya identifikasi adalah dalam penyesuaian tema. Karena tema dapat tersedia untuk beberapa situs web, penyesuaian apa pun yang Anda lakukan pada suatu tema juga akan memengaruhi situs lain yang menggunakan tema tersebut pada penginstalan multi-situs Anda. Cara saya menyiasatinya adalah dengan menduplikasi tema sebelum saya mulai menyesuaikan, dan dengan jelas memberi nama tema untuk situs klien tempat saya menatanya.

Masalah menarik lainnya adalah apa yang terjadi di file .htaccess di server Apache Anda. WordPress perlu menulis ulang jalur per blog dan melakukannya dengan aturan penulisan ulang dan file php.

WordPress menggunakan aturan penulisan ulang berikut:

RewriteRule ^ ([_ 0-9a-zA-Z -] + /)? Files /(.+) wp-include / ms-files.php? File = $ 2 [L]

Pada dasarnya, apa pun yang ada di subdirektori mysite.com/files/directory akan ditulis ulang ke mysite.com/files/wp-includes/myblogfolderpath… dan di sinilah menjadi menarik. Apa yang terjadi jika Anda benar-benar perlu memiliki file di server Anda yaitu mysite.com/files/myfolder/myimage.jpg? Anda mendapatkan kesalahan 404, itulah yang terjadi. Aturan penulisan ulang Apache berlaku dan mengubah jalurnya.

Memang, Anda mungkin tidak pernah menemukan masalah ini, tetapi saya melakukannya. Saya memiliki situs yang perlu menggunakan widget javascript dari situs web lain, dan situs tersebut perlu menemukan grafik di mysite.com/files/Images/myfile. Karena tidak ada cara untuk mengubah file di situs host, saya perlu mencari cara untuk melakukan ini di server saya. Solusi mudahnya adalah membuat kondisi penulisan ulang yang membuat pengecualian untuk file tertentu.

Berikut adalah solusinya:

RewriteCond% {REQUEST_URI}! /? Files / Image / file1.jpg $
RewriteCond% {REQUEST_URI}! /? Files / Image / file2.jpg $
RewriteRule ^ ([_ 0-9a-zA-Z -] + /)? Files /(.+) wp-include / ms-files.php? File = $ 2 [L]

Kondisi penulisan ulang harus ditempatkan sebelum aturan penulisan ulang, atau trik ini tidak akan berhasil. Akan mudah untuk mengubah kondisi ini untuk tujuan Anda sendiri, jika Anda mengalami masalah serupa. Solusinya bekerja sangat baik untuk saya, memungkinkan saya untuk mengganti grafik khusus daripada teks alt yang kurang diinginkan yang tidak sesuai dengan desain saya. Mudah-mudahan, ini akan berhasil juga untuk Anda.

Bagaimana menurut Anda?

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.