1.Чистая установка python 3.6.5 в usr / local и usr / local / lib
Я гарантировал, что YUM был обновлен:
$ yum update
Компиляторы и связанные инструменты:
$ yum groupinstall -y "development tools"
библиотек, необходимых во время компиляции для включения всех функций Python:
$ yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-
devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
expat-devel
установка Python 3.6.5:
$ wget http://python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz
$ tar xf Python-3.6.5.tar.xz
$ cd Python-3.6.5
$ ./configure --prefix=/usr/local --enable-shared LDFLAGS="-Wl,-rpath
/usr/local/lib"
$ make && make altinstall
2.Установленный mod_wsgi с помощью pip install
с использованием только что установленного python3.6 Я выполнил следующую команду
$python3.6 -m pip install mod_wsgi
3.Загрузите Mod_wsgi в модуль Apache
Найдите файл конфигурации Apache /etc/apache2/conf/http.conf и добавьте следующую команду для загрузки mod_wsgi, указав путь установки.В моем случае добавлена команда loadModule в /etc/apache2/conf.d/includes/pre_main_global.conf
$ LoadModule wsgi_module /usr/local/lib/python3.6/site-
packages/mod_wsgi/server/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so
4.Перезапустите Apache Server и убедитесь, что mod_wsgi загружен
$apachectl restart
$apachectl -M
, просмотрите список и убедитесь, что mod_wsgi является частью модулей, загружаемых apache.
5.настроить виртуальный хост и выполнить простой тест hello.py
У меня есть сервер, на котором уже размещены 7 различных сайтов.я просто создал новый поддомен и изменил виртуальный хост субдомена, чтобы он выглядел как
<VirtualHost mysite.com_ip:80>
ServerName wsgitest.mysite.com
ServerAlias www.wsgitest.mysite.com
DocumentRoot /home/account_username/public_html/wsgitest
ServerAdmin admin@mysite.com
<Directory /home/account_username/public_html/wsgitest>
Order allow,deny
Allow from all
</Directory>
WSGIScriptAlias / /home/account_username/public_html/wsgitest/hello.py
ErrorLog /home/account_username/public_html/wsgitest/wsgitest_error.log
</VirtualHost>
перезапустите apache после изменения виртуального хоста
создайте приложение hello.py wsgi в соответствии с этим сайтом - http://modwsgi.readthedocs.io/en/develop/user-guides/quick-configuration-guide.html
hello.py
def application(environ, start_response):
status = '200 OK'
output = b'Hello World!'
response_headers = [('Content-type', 'text/plain'),
('Content-Length', str(len(output)))]
start_response(status, response_headers)
return [output]
, поэтому мое приложение wsgitest выглядит так на сервере /home/account_username/public_html/wsgitest/hello.py
Наконец, протестируйтесайт в браузере, например, так - wsgitest.mysite.com вы должны увидеть «Hello World»
Надеюсь, это кому-нибудь поможет