学习PYthon
第一天
环境安装:使用ubuntu系统 自带python2
安装apache sudo apt-get install apache2
安装WSgi sudo apt-get install libapache2-mod-wsgi
配置apache wsgi
apache 的www目录在/var/www/html
在该目录下建立文件:main.py
内容:
def application(environ, start_response):
status = '200 OK'
output = 'Hello World!'+str(environ)
response_headers = [('Content-type', 'text/plain'),
('Content-Length', str(len(output)))]
start_response(status, response_headers)
return [output]
apache 的安装目录是/etc/apache2 下有一个配置文件:apache2.conf
使用sudo nano apache2.conf 打开加入下面两句:
LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so
WSGIScriptAlias /main /var/www/html/main.py
重启apache: sudo service apache2 restart 不出错就成功了
用浏览器打开127.0.0.1/main 出现
Hello World!{'mod_wsgi.listener_port': '80', 'mod_wsgi.listener_host': '', 'CONTEXT_DOCUMENT_ROOT': '/var/www/html', 'SERVER_SOFTWARE': 'Apache/2.4.34 (Ubuntu)', 'SCRIPT_NAME': '/main', 'mod_wsgi.enable_sendfile': '0', 'mod_wsgi.handler_script': '', 'SERVER_SIGNATURE': '<address>Apache/2.4.34 (Ubuntu) Server at 127.0.0.1 Port 80</address>\n', 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'wsgi.errors': <mod_wsgi.Log object at 0x7f0ff3d00670>, 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:66.0) Gecko/20100101 Firefox/66.0', 'HTTP_CONNECTION': 'keep-alive', 'SERVER_NAME': '127.0.0.1', 'REMOTE_ADDR': '127.0.0.1', 'mod_wsgi.request_handler': 'wsgi-script', 'apache.version': (2, 4, 33), 'wsgi.url_scheme': 'http', 'PATH_TRANSLATED': '/var/www/html/index.html', 'SERVER_PORT': '80', 'mod_wsgi.thread_id': 1, 'wsgi.multiprocess': True, 'SERVER_ADDR': '127.0.0.1', 'DOCUMENT_ROOT': '/var/www/html', 'mod_wsgi.process_group': '', 'mod_wsgi.thread_requests': 0L, 'mod_wsgi.total_requests': 0L, 'mod_wsgi.request_id': 'luudC6JAG/Q', 'SCRIPT_FILENAME': '/var/www/html/main.py', 'SERVER_ADMIN': 'webmaster@localhost', 'mod_wsgi.ignore_activity': '0', 'wsgi.input': <mod_wsgi.Input object at 0x7f0ff3d58880>, 'HTTP_HOST': '127.0.0.1', 'CONTEXT_PREFIX': '', 'mod_wsgi.callable_object': 'application', 'wsgi.multithread': True, 'HTTP_UPGRADE_INSECURE_REQUESTS': '1', 'REQUEST_URI': '/main/', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'mod_wsgi.path_info': '/', 'wsgi.file_wrapper': <type 'mod_wsgi.FileWrapper'>, 'wsgi.version': (1, 0), 'GATEWAY_INTERFACE': 'CGI/1.1', 'wsgi.run_once': False, 'mod_wsgi.script_name': '/main', 'REMOTE_PORT': '38630', 'HTTP_ACCEPT_LANGUAGE': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2', 'REQUEST_SCHEME': 'http', 'mod_wsgi.version': (4, 5, 17), 'mod_wsgi.script_start': '1553309477249490', 'mod_wsgi.application_group': '127.0.1.1|/main', 'mod_wsgi.script_reloading': '1', 'mod_wsgi.request_start': '1553309477235606', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate'}
出现环境搭建成功。
LoadFile c:/python/python37/python37.dll
LoadModule wsgi_module c:/python/python37/lib/site-packages/mod_wsgi/server/mod_wsgi.cp37-win_amd64.pyd
WSGIPythonHome c:/python/python37
AddDefaultCharset UTF-8
<VirtualHost *:80 >
WSGIScriptAlias / D:/workespace/web/wsgi.py
DocumentRoot D:/workespace/web
<Directory D:/workespace/web>
Options Indexes FollowSymLinks ExecCGI
Require all granted
</Directory>