>  기사  >  백엔드 개발  >  Python web.py에서 https 포트를 시작하는 방법

Python web.py에서 https 포트를 시작하는 방법

王林
王林앞으로
2023-05-17 21:07:071313검색

python web.py가 https 포트를 시작합니다

​​​ Web.py가 https 포트를 시작하려면 SSL 인증서가 필요합니다. SSL 인증서가 없는 경우 다음과 같이 생성할 수 있습니다.

openssl genrsa -des3 -out server.key 1024
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
sudo openssl rsa -in server.key -out server.key

                                                                                                           사용       사용                 사용 out through off out off out off out off out out out out out outole outallowallowallowallowallow outallow out out out out out out out out out out through out through out out out out out out out out out over crt. 그리고 ***.key 및 ***.csr, 서비스를 시작하려면 server.crt server.csr server.key

# -*- coding: utf-8 -*-
"""
Created on Mon May 10 20:37:00 2021
@author: Administrator
"""
import web              #web.py
urls = (
        '/server' , 'server', 
        '/.*', 'notfound'     #localhost:port/其他任意界面,访问notfound类
        )
class MyApplication(web.application):
    def run(self, port=8080, *middleware):
        func = self.wsgifunc(*middleware)
        return web.httpserver.runsimple(func, ('0.0.0.0', port))
class server:
    def __init__(self):
        self.return_msg = {'errorCode': 0, 'msg': '系统正常!'}     
    def POST(self):                    #POST处理方式与GET一致
        # content  = web.input()
        # print('收到消息:', content.key1, content.key2, content.key3)
        x = web.input(myfile={})
        print('xxx: ', x.keys())
        return str(self.return_msg).replace('\'', '\"')
class notfound:
    def GET(self):
        print('--from notfound')
        return '404 not found'
    def POST(self):
        print('--from notfound')
        return '404 not found'
from cheroot.server import HTTPServer
from cheroot.ssl.builtin import BuiltinSSLAdapter
HTTPServer.ssl_adapter = BuiltinSSLAdapter(
        certificate='server.crt',
        private_key='server.key')
if __name__ == "__main__":
    app = MyApplication(urls ,globals())
    app.run(port=443)

를 다시 명령합니다. 다음 코드를 입력하면 됩니다. 여기서

from handler import Handle은 다음과 같습니다. 소개된 My method 모듈은 URL에서 호출됩니다(WeChat 공개 계정에서 개발한 예제에 따라, 초보자라면 직접 볼 수 있습니다). 저장된 파일 경로를 자신의

 openssl genrsa -des3 -out server.key 1024
    openssl req -new -key server.key -out server.csr
    openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
    mv server.key myserver.key
    mv server.crt myserver.crt
에 따라 작성한 다음 sudo 서비스를 시작합니다. python main.py 443( (443은 포트 번호)

이때 SSL 이전에 설정한 비밀번호를 입력해야 열 수 있는데, 이렇게 하면 백그라운드에서 숨겨지는 것을 방지할 수 있습니다.

하지만 인증서가 생성된 폴더에서 sudo openssl rsa -in server.key -out server.key를 실행하면 비밀번호가 없으므로 백그라운드에서 실행될 수 있다는 뜻입니다

nohup python main.py 443 &

위 내용은 Python web.py에서 https 포트를 시작하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제