سؤال

سأقوم بالترقية إلى Linux Debian 6.0 "Squeeze" على الخادم قريبًا وأريد أن أعرف كيف يمكنني استخدامه بيثون كخادم ويب على العديد من المنافذ مخصصة لأشياء مختلفة ..

Ports            Directory           Description
80, 443          /var/www/sitegen/   Take all domains and generate a site from the SQL DB
444, 1000-3000   /var/www/manager/   Take 444 as a PHP server manager and the rest to be forwarded to serial hardware.
8000-9000        The VMs DIR         Forward the port to port 80 (or 443 by settings) on the VMs.

هذا يعني أنه يمكن استخدام المنفذ 443 للعديد من المواقع (مدعوم من نفس الكود فقط في SQL DB)

هل كانت مفيدة؟

المحلول 2

في بيثون:

import os
from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer

class myHandler(BaseHTTPRequestHandler):

    def do_GET(self):
        self.send_response(200)
        self.send_header("Content-type", "text/html")
        self.end_headers()
        self.wfile.write("This is working")

def main():
    try:
        server = HTTPServer(("", 8080), myHandler)
        print "Sever is up.."
        server.serve_forever()
    except KeyboardInterrupt:
        print
        print "Bye, Bye!"
        server.socket.close()

if __name__ == "__main__":
    main()

نصائح أخرى

هذا ليس سؤال PHP لأن مترجم PHP لا يستمع مباشرة على المنافذ. على Linux ، سيتم تشغيل (عادة) داخل Apache. يمكن تكوين Apache للاستماع إلى منافذ متعددة ، وحتى على أساس مضيف لكل زهرية.

أيضًا ، كن على دراية بأن طبيعة HTTPS تجعل من المستحيل على العديد من المضيفين الظاهريين استخدام شهادة SSL الخاصة بهم وما زالت تستمع جميعها على نفس المنفذ. سيحتاج كل منهم إلى شهادة خاصة بهم ويحتاجون إلى الاستماع على منفذهم الخاص.

بالإضافة إلى ذلك ، فإن إرسال منافذ محددة إلى الأجهزة الظاهرية التي تعمل على المربع لا علاقة لها بخادم الويب ، ناهيك عن بيئة التنفيذ. هذا مزيج من تكوين توجيه المنفذ داخل الشبكة الظاهرية ، إلى جانب تكوين خادم الويب المحلي في أجهزتك الافتراضية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top