[PYTHON] Intégrons Django et apache (httpd) sur Mac! !!

environnement

Shimarisu Taro C'était une vie que je voulais lier django et apache sur Mac J'étais autorisé à me référer!

Cependant, il y a certains domaines que je n'ai pas pu résoudre, alors je le publie dans l'espoir que cela aidera les gens dans des circonstances similaires!

C'est mon premier message, mais je vais essayer de le transmettre d'une manière facile à comprendre. Lol

Ce synopsis

--Installation autour de mod_wsgi

Paramètres Python

La version de Python que j'ai utilisée cette fois est la 3.6.2.

Je pense que toute version est bien ici.

cependant,

CONFIGURE_OPTS="--enable-shared" pyenv install 3.6.2

Il doit être installé avec une option comme.

Toyu

/Users/username/.pyenv/versions/3.6.2/lib/libpython3.6m.dylib

S'il n'y a pas de tel fichier, mod_wsgi.so qui apparaîtra plus tard ne pourra pas faire référence à python et générera une erreur.

Si vous ne l'avez pas effacé et que vous créez un projet Django, veuillez installer Python en utilisant la méthode ci-dessus et recréez le projet. ..

Installation autour de mod_wsgi

pip install mod-wsgi-httpd

pip install mod_wsgi

Veuillez installer autour de mod_wsgi avec!

Ce type est responsable de la connexion d'Apache et de Django.

paramètres Apache

Le Mac est livré avec apache par défaut, mais son utilisation semble inutile, alors installez la dernière version.

Procédure pour installer Apache httpd sur macOS avec Homebrew

C'était très facile à comprendre!

prochain,

/usr/local/etc/httpd/httpd.conf

J'ajouterai du code à. C'est le plus important!

M. Taro Shimarisu est également mentionné,

[Introduction à Django] Exécutons le serveur en utilisant apache

C'est une erreur d'ajouter ce qui suit à httpd.conf dans.

LoadModule /Users/username/.pyenv/versions/anaconda3-4.3.0/lib/python3.6/site-packages/mod_wsgi/server/mod_wsgi-py36.cpython-36m-darwin.so
WSGIScriptAlias / /Users/username/anaconda3/mySite/mySite/wsgi.py
WSGIPythonPath /Users/username/anaconda3/mySite
WSGIPythonPath /Users/username/.pyenv/versions/anaconda3-4.3.0/lib/python3.6/site-packages
<Directory /Users/username/anaconda3/mySite/mySite>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>

Il y a trois endroits où je me suis fait prendre.

Le premier est le cas où l'argument de la première ligne est insuffisant. Correctement,

LoadModule wsgi_module /Users/username/.pyenv/versions/3.6.2/lib/python3.6/site-packages/mod_wsgi/server/mod_wsgi-py36.cpython-36m-darwin.so

Il doit y avoir un argument appelé wsgi_module, tel que.

Le second est le cas où la cinquième ligne est inutile. Commentez-le ou supprimez-le comme suit:

#WSGIPythonPath /Users/e175711/.pyenv/versions/3.6.2/lib/python3.6/site-packages

C'est la partie qui n'a pas été soulignée par M. Taro Shimarisu!

Je me demande si cela n'était nécessaire que dans mon propre environnement.

À propos, si vous ne commentez pas ici, lors de l'accès à localhost

500 Internal Server Error

J'ai une erreur.

Le troisième est le cas où les 9e et 10e lignes sont anciennes. Fixons-le comme suit!

<Directory /Users/username/anaconda3/mySite/mySite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>

C'est une partie qui n'a pas été soulignée par M. Taro Shimarisu! Les spécifications ont changé ~

Au fait, si vous ne le modifiez pas lors de l'accès à localhost

403 Forbidden

J'ai une erreur.

Vous ne pouvez autoriser l'accès qu'à partir d'une adresse IP spécifique ici, veuillez donc ajuster en conséquence!

Finalement ici

sudo brew services restart httpd

Hit et vous devriez pouvoir voir la page du tutoriel Django!

La raison du redémarrage est de lire le httpd.conf modifié et de le refléter.

À la fin

Merci d'avoir lu jusqu'ici! Je ne l'ai pas couvert dans cet article, mais j'ai rencontré un problème en raison du fait que je n'ai pas pu y accéder car je n'ai pas défini ALLOWED_HOSTS dans le fichier settings.py du projet, et je suis tombé sur diverses autres choses. Après tout, c'est difficile ~ Cependant, c'est toujours le meilleur quand je peux le résoudre par essais et erreurs à ma manière. Lol Si vous constatez des lacunes, veuillez nous en informer!

Recommended Posts

Intégrons Django et apache (httpd) sur Mac! !!
Comment intégrer Apache httpd 2.4 et Tomcat 9 sur Cent OS 8
Intégrez Apache et Tomcat
Exécutez l'application flask sur Cloud 9 et Apache Httpd
Python3 + Django ~ Mac ~ avec Apache
Installez Django sur Mac
Catalina sur Mac et pyenv
MQTT sur Raspberry Pi et Mac
HTTPS avec Django et Let's Encrypt
Lier Modelica et Python sous Windows
Remarques sur la construction de Python et pyenv sur Mac
CentOS 6.4, Python 2.7.3, Apache, mod_wsgi, Django
Comment installer Apache (httpd) sur CentOS7
Comment installer Apache (httpd) sur CentOS8
Construire un serveur Web avec Apache 2.4 (httpd 2.4.43) + PHP 7.4 sous Linux --4 Security (chown et firewalld)
Source compilez Apache2.4 (httpd 2.4.43) + PHP7.4 sous Linux pour construire un serveur Web ―― 1. Introduction à Apache
Source compile Apache2.4 (httpd 2.4.43) + PHP7.4 sous Linux pour construire un serveur Web --2 introduction PHP
Gérer les images Django et les actifs statiques sur Ubuntu
Exécutez une application django sur Windows + Apache + mod_wsgi + service.
Journal des travaux d'installation de Zsh et Prezto sur Mac
Supprimer l'ancien environnement pyenv sur Mac et mettre à jour
Essayez d'importer des données MLB sur Mac et Python
python sur mac
Résumons Apache
Installez Python 3 sur Mac et créez un environnement [Definitive Edition]
Créer un environnement de développement Django à l'aide de pyenv-virtualenv sur Mac
Apache + Django + Shibboleth sur Windows Server 2016 Résumé des articles connexes
Publiez votre application Django sur Amazon Linux + Apache + mod_wsgi
Créer un serveur HTTP Apache et Wildfly sur Oracle Linux 8
Installation de Python 3 sur Mac et vérification du fonctionnement de base Partie 1
Créons une application Mac avec Tkinter et py2app
Installez django sur python + anaconda et démarrez le serveur