PermissionError: [Errno 13] Отказано в доступе при выполнении CGI-сценариев на стороне сервера, написанных на Python - PullRequest
0 голосов
/ 29 сентября 2018

Я пытаюсь запустить серверный скрипт cgi, кодированный на python, но я получаю следующую ошибку при его запуске.

Traceback (most recent call last):
  File "webserver.py", line 16, in <module>
    srvrobj = HTTPServer(srvraddr,CGIHTTPRequestHandler)
  File "/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/socketserver.py", line 449, in __init__
    self.server_bind()
  File "/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/server.py", line 137, in server_bind
    socketserver.TCPServer.server_bind(self)
  File "/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/socketserver.py", line 463, in server_bind
    self.socket.bind(self.server_address)
PermissionError: [Errno 13] Permission denied

Вот скрипт, который я пытаюсь запустить.

"""
Implement an HTTP web server in Python that knows how to run server-side
CGI scripts coded in Python; serves files and scripts from current working
dir; Python scripts must be stored in webdir\cgi-bin or webdir\htbin;

"""

import os,sys
from http.server import HTTPServer, CGIHTTPRequestHandler

webdir = '.'
port = 80       #default http://localhost/, else use http://localhost:xxxx/

os.chdir(webdir)
srvraddr  = ("",port)
srvrobj = HTTPServer(srvraddr,CGIHTTPRequestHandler)
srvrobj.serve_forever()

Любая помощь будет оценена.Заранее спасибо.

1 Ответ

0 голосов
/ 29 сентября 2018

Используйте это

chmod 777 script_name,

, затем запустите сценарий, если он снова выйдет из строя, затем используйте

sudo python script_name

или проверьте, какЗапустите скрипт с правами администратора в соответствующей операционной системе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...