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
--Installation autour de mod_wsgi
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. ..
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.
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.
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