Peraturan WordPress Mempunyai Pengecualian, Terlalu

apache wordpress

apache wordpressWordPress membuat langkah evolusi yang besar dalam platform blogging, menjadikannya lebih dekat ke sistem pengurusan kandungan yang lengkap dengan penjejakan semakan, lebih banyak sokongan untuk menu tersuai, dan –perkara yang paling menarik bagi saya-sokongan berbilang laman web dengan pemetaan domain.

Sekiranya anda bukan orang gila sistem pengurusan kandungan, tidak mengapa. Anda boleh melewati artikel ini. Tetapi untuk rakan-rakan tekno-geeks, ketua-ketua kod dan pengawal-peneliti, saya ingin berkongsi sesuatu yang menarik, dan sesuatu yang menarik.

Multi-laman web adalah ciri yang membolehkan anda menjalankan sebilangan besar laman web WordPress dengan satu pemasangan WordPress. Sekiranya anda menguruskan beberapa laman web, itu bagus kerana anda boleh memasang kumpulan tema dan widget yang diluluskan, dan mengaktifkannya untuk laman web pelanggan anda. Terdapat beberapa rintangan teknikal untuk memetakan domain anda, tetapi prosesnya tidak sukar.

Salah satu bidang masalah yang saya kenal pasti adalah dalam penyesuaian tema. Oleh kerana tema dapat disediakan untuk beberapa laman web, penyesuaian apa pun yang anda lakukan pada tema juga akan mempengaruhi laman web lain yang menggunakan tema tersebut pada pemasangan berbilang laman web anda. Cara saya mengatasi ini adalah menggandakan tema sebelum saya mula menyesuaikannya, dan menamakan tema dengan jelas untuk laman klien yang saya gemari.

Masalah lain yang menarik ialah apa yang berlaku dalam fail .htaccess pada pelayan Apache anda. WordPress perlu menulis semula jalan berdasarkan blog demi blog dan melakukan ini dengan peraturan menulis semula dan fail php.

WordPress menggunakan peraturan menulis semula berikut:

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

Pada dasarnya, apa sahaja yang terdapat dalam subdirektori mysite.com/files/directory akan ditulis semula ke mysite.com/files/wp-includes/myblogfolderpath… dan di sinilah ia menjadi menarik. Apa yang berlaku sekiranya anda benar-benar memerlukan fail di pelayan anda iaitu mysite.com/files/myfolder/myimage.jpg? Anda mendapat ralat 404, itulah yang berlaku. Peraturan menulis semula Apache bermula dan mengubah jalannya.

Memang, anda mungkin tidak pernah menghadapi masalah ini, tetapi saya berjaya. Saya mempunyai laman web yang perlu menggunakan widget javascript dari laman web lain, dan perlu mencari grafik di mysite.com/files/Images/myfile. Oleh kerana tidak ada cara untuk menukar fail di laman web host, saya perlu mencari jalan untuk melakukan ini di pelayan saya. Penyelesaian yang mudah adalah membuat keadaan menulis semula yang membuat pengecualian untuk fail tertentu.

Inilah penyelesaiannya:

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

Syarat menulis semula mesti diletakkan sebelum peraturan menulis semula, atau helah ini tidak akan berjaya. Mudah untuk mengubah keadaan ini untuk tujuan anda sendiri, sekiranya anda menghadapi masalah yang serupa. Penyelesaiannya sangat sesuai untuk saya, membolehkan saya menggantikan grafik tersuai daripada teks alt yang kurang diingini yang tidak sesuai dengan rekaan saya. Semoga berjaya juga untuk anda.

Apa yang anda fikir?

Laman web ini menggunakan Akismet untuk mengurangkan spam. Ketahui bagaimana data komen anda diproses.