لدينا بالفعل العديد من العملاء الذين يستخدمون Nginx على VPS. إحدى المشكلات الأكثر شيوعًا التي يواجهها العملاء الذين انتقلوا للتو من Apache هي كيفية إعادة الكتابة ضمن Nginx وكيفية تحويل .htaccess في Apache إلى Nginx. هناك العديد من المقالات عبر الإنترنت حول هذا الموضوع. هناك الكثير من المعلومات، بما في ذلك إعادة الكتابة على WordPress، وdiscus، وphpcms، وecshop، وshopex، وما إلى ذلك، ما عليك سوى نسخها. مشكلة أخرى شائعة لدى مبتدئي Nginx هي أنهم لا يعرفون كيفية تغيير قواعد إعادة الكتابة بعد الحصول عليها، على سبيل المثال، ما الذي يجب تغييره عند إعادة كتابة الدليل الفرعي ضمن Nginx؟ / هو Wordpress، / bbs مخصص لـ diskuz، / هو diskuz، /blog مخصص لـ Wordpress، أو / مخصص لـ Wordpress، و /blog مخصص لـ Wordpress، وما إلى ذلك. كيفية تغيير إعادة الكتابة هذه؟ دعونا نضع بعض الأمثلة في الأسئلة الشائعة للرجوع إليها:
تم تثبيت WordPress في الدليل الفرعي /blog:
الموقع / المدونة / {
الجذر /الصفحة الرئيسية/www/vpsee.com;
فهرس Index.php Index.html Index.htm;
إذا (!-e $request_filename) {
أعد كتابة ^.+/?(/blog/wp-.*) $1 last;
أعد كتابة ^.+/?(/blog/.*.php)$ $1 last;
أعد كتابة ^(.+)$ /blog/index.php?q=$1 last;
}
}
تم تثبيت Discuz! 7.2 في الدليل الفرعي /bbs:
الموقع / بي بي اس / {
الجذر /الصفحة الرئيسية/www/vpsee.com;
فهرس Index.php Index.html Index.htm;
أعد كتابة ^/bbs/archiver/((fid|tid)-[w-]+.html)$ /bbs/archiver/index.php?$1 last;
أعد كتابة ^/bbs/forum-([0-9]+)-([0-9]+).html$ /bbs/forumdisplay.php?fid=$1&page=$2 last;
أعد كتابة ^/bbs/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ /bbs/viewthread.php?tid=$1&extra=page %3D$3&page=$2 الأخير;
أعد كتابة ^/bbs/space-(username|uid)-(.+).html$ /bbs/space.php?$1=$2 last;
أعد كتابة ^/bbs/tag-(.+).html$ /bbs/tag.php?name=$1 last;
}
تم تثبيت Discuz! X1.5 في الدليل الفرعي /bbs:
الموقع / بي بي اس / {
الجذر /الصفحة الرئيسية/www/vpsee.com;
فهرس Index.php Index.html Index.htm;
أعد الكتابة ^([^.]*)/topic-(.+).html$ $1/portal.php?mod=topic&topic=$2 last;
أعد الكتابة ^([^.]*)/article-([0-9]+)-([0-9]+).html$ $1/portal.php?mod=view&aid=$2&page=$3 last;
أعد الكتابة ^([^.]*)/forum-(w+)-([0-9]+).html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
أعد الكتابة ^([^.]*)/thread-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D $4&page=$3 أخيرًا؛
أعد الكتابة ^([^.]*)/group-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=group&fid=$2&page=$3 last;
أعد الكتابة ^([^.]*)/space-(username|uid)-(.+).html$ $1/home.php?mod=space&$2=$3 last;
أعد الكتابة ^([^.]*)/([az]+)-(.+).html$ $1/$2.php?rewrite=$3 last;
إذا (!-e $request_filename) {
عودة 404؛
}
}
إذا كنت تواجه صعوبة في فهم التعبيرات النمطية مثل ^([^.]*)/([az]+)-(.+).html$ ومهتم بهذا الجانب، يمكنك قراءة بعض الكتب، ويفضل الكتاب الأفضل يجب أن يكون إتقان التعبيرات العادية بواسطة O'Reilly (متوفر أيضًا في النسخة الصينية: "إتقان التعبيرات العادية").
مصدر المقال: www.vpsee.com