Ich wollte eine Flask-Umgebung auf dem Sakura-Mietserver (Standard) erstellen, hatte aber Schwierigkeiten, da ich sudo nicht verwenden konnte und die Standard-Shell cshell war. Daher musste ich einige Änderungen gegenüber dem Referenzartikel im Web vornehmen. (Für Anfänger)
--0. Bestätigung der Umgebung ―― 1. Erstellen Sie mit pyenv eine Python-Umgebung ―― 2. Installieren Sie den Kolben mit pip in der erstellten Python-Umgebung ―― 3. Stellen Sie cgi ein und überprüfen Sie die Funktion der Flask-App.
Das Benutzerverzeichnis auf dem Sakura-Mietserver lautet / home /
python
$ cd /home/<username>/
$ cd $HOME
$ cd ~/
$ cd /home/fififactory/
Danach legen wir die Konfiguration im Benutzerverzeichnis ab.
Überprüfen Sie den Speicherort und die Version von Python, die standardmäßig installiert sind
python
$ which python
/usr/local/bin/python
$ python -V
2.7.3
Überprüfung der Shell
python
$ echo $SHELL
csh
Hier fallen Bash- und Zsh-Personen nicht in den Geltungsbereich dieses Artikels.
Da Git auf dem Sakura-Mietserver verwendet werden kann, werde ich es herunterladen.
Nach dem Üben schreibe ich Befehle mit einem Shell-Skript. (Es wird nützlich sein, wenn Sie später darauf zurückblicken. Sie können es ausführen, indem Sie den Befehl direkt drücken. Ich denke, das ist in Ordnung für diejenigen, die Probleme haben.)
python
#Dateiname: pyenv-download.sh
#!/bin/csh <-Stellen Sie klar, dass es mit cshell funktioniert.
git clone https://github.com/yyuu/pyenv.git ~/.pyenv
Mit diesem Befehl können Sie git verwenden, um das pyenv-Repository im Ordner ~ / .pyenv von https://github.com/yyuu/pyenv.git zu speichern.
Speichern Sie dann das Shell-Skript (pyenv-download.sh) in Ihrem Benutzerverzeichnis und führen Sie die Shell aus.
python
#Ausführungsberechtigung hinzufügen.
$ chmod 755 pyenv-download.sh
#Führen Sie das Shell-Skript aus
$ ~/pyenv-download.sh
Nachdem Sie pyenv heruntergeladen haben, ist es Zeit, es zu installieren.
.cshrc
python
# $FreeBSD: src/share/skel/dot.cshrc,v 1.14.6.1 2008/11/25 02:59:29 kensmith Exp $
#
# .cshrc - csh resource script, read at beginning of execution by each shell
#
# see also csh(1), environ(7).
#
.....
(Am Ende eingeben)
# Setting for pyenv
# *****************
if ( -e $HOME/.pyenv/bin/pyenv ) then
echo '>> Exist pyenv'
#Stellen Sie den Wurzelpfad von pyenv ein
setenv PYENV_ROOT $HOME/.pyenv
#Fügen Sie pyenv Verzeichnis zu PATH hinzu
setenv PATH $PYENV_ROOT/shims:$PYENV_ROOT/bin:$PATH
#Das temporäre Standardverzeichnis~/Wechseln Sie zu tmp
setenv TMPDIR $HOME/tmp
#Starten Sie pyenv neu
pyenv rehash
else
echo '>> NO INSTALL pyenv'
endif
Dieser Befehl verwendet die if-Anweisung, um bedingt zu behandeln, ob $ HOME / .pyenv / bin / pyenv vorhanden ist. Und wenn pyenv existiert, durchläuft es die Verzeichnis- und Pfadeinstellungen. (TMDIR muss möglicherweise nicht in die if-Anweisung aufgenommen werden.)
Ich habe die Shell neu geschrieben, also lass es mich noch einmal lesen.
python
$ source $HOME/.cshrc
Lassen Sie uns nun mit pyenv eine Python-Umgebung erstellen.
Laden Sie zunächst die zu verwendende Python-Version herunter. Der Befehl lautet pyenv install.
python
$ pyenv install --list #Überprüfen Sie die Installationsliste
$ pyenv install 2.7.9 # python2.7.Installieren Sie 9
Dies ist jedoch noch nicht verwendbar. Nur diese Version von Python wird im pyenv-Verzeichnis vorbereitet.
Da pyenv die Umgebung für jedes Verzeichnis verwaltet, erstellen Sie ein Verzeichnis an einem geeigneten Speicherort.
python
#Erstellen Sie ein Verzeichnis für die virtuelle Umgebung(Der Standort ist beliebig)
$ mkdir $HOME/tmp/python
$ cd $HOME/tmp/python
Überprüfen Sie den Pfad und die Version von Python zu diesem Zeitpunkt.
python
$ which python #Überprüfen Sie die aktuelle Python
/usr/local/bin/python
$ pyton -V
2.7.3
Es sollte für die oben genannten herauskommen. Stellen Sie sicher, dass Sie die Standardeinstellungen von Sakura beibehalten.
python
$ pyenv local 2.7.9 #Erstellen Sie lokale Python
$ pyenv local #Überprüfen Sie, ob es eingestellt ist
python
$ whitch python
/home/fififactory/.pyenv/shims/python
$ python -V
2.7.9
Jetzt können Sie sehen, dass Python in / shims / python in pyenv angegeben ist. Dies ist, was ich in den Pfad in .cshrc eingefügt habe. Es bleibt also hängen, wenn die Einstellung für den .cshrc-Pfad nicht funktioniert. (Ich blieb stecken)
Aufbau der Python-Umgebung abgeschlossen
Jetzt, da Sie dank pyenv pip verwenden können, setzen wir flask in die lokale Python-Umgebung.
Erstellen Sie zunächst mit virtualenv eine Umgebung für Flask.
python
$ git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
$ pyenv virtualenv 3.4.2 3.4.2-flask
Als Umgebung, die auf der Python-Version 3.4.2 basiert, habe ich eine virtuelle Umgebung mit dem Namen 3.4.2-flask (beliebiger Name) erstellt.
Installieren Sie den Kolben mit Pip. Wechseln Sie wie zuvor in das Verzeichnis, in dem Sie die Umgebung festlegen möchten, und geben Sie den folgenden Befehl ein.
python
$ pyenv local 3.4.2-flask
$ pip install Flask
Wenn Sie Flask in der Pip-Liste haben, sind Sie fertig.
Bereiten Sie ein Verzeichnis für Zugriffstests im Verzeichnis www des Benutzerverzeichnisses vor.
python
mkdir ~/www/flask-cgi-test
mkdir ~/www/flask-cgi-test/hello
cd ~/www/flask-cgi-test/hello
Bereiten Sie drei Dateien im Verzeichnis / hello / vor.
(1) .htaccess
python
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /flask-cgi-test/hello/index.cgi/$1 [QSA,L]
(2) appFlask.py
python
# coding: utf-8
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return "Hello!"
if __name__ == '__main__':
app.run()
(3) index.cgi
python
#!/home/fififactory/.pyenv/versions/3.4.2-flask/bin/python
import cgitb
cgitb.enable()
from wsgiref.handlers import CGIHandler
from appFlask import app
CGIHandler().run(app)
Greifen Sie auf "http: //
Wenn Hallo erscheint, ist es erfolgreich.
Als ich versuchte, eine Webanwendung zu erstellen, registrierte ich mich begeistert bei Sakura und versuchte, Flask auszuführen, aber im Gegensatz zur lokalen Umgebung konnte ich sudo nicht verwenden oder ohne Administratorrechte nicht installieren. Es dauerte ungefähr 4 Tage, um diesen Artikel zu verschieben. Das, wovon ich am meisten abhängig war, war, dass ich das Shell-Skript nicht wirklich verstand und es zu spät war, um zu bemerken, dass die Standard-Shell chs war. Dies ist ein Memorandum für Anfänger, aber ich habe es in der Hoffnung veröffentlicht, dass es für diejenigen hilfreich sein wird, die auch süchtig nach dem Aufbau einer Umgebung sind. Wenn Sie einen Fehler machen, kommentieren Sie bitte.
Danke für Ihren Besuch.
[.cshrc --csh, tcsh settings](http://technique.sonots.com/?UNIX%2F%E8%A8%AD%E5%AE%9A%E3%80%81%E8%A8%AD% E5% AE% 9A% E3% 83% 95% E3% 82% A1% E3% 82% A4% E3% 83% AB% 2F.cshrc)
Verwenden Sie pyenv und Flask auf dem Sakura-Mietserver
Recommended Posts