内容へ移動
fl8 Wiki
ユーザ用ツール
ログイン
サイト用ツール
検索
ツール
文書の表示
以前のリビジョン
バックリンク
最近の変更
メディアマネージャー
サイトマップ
ログイン
>
最近の変更
メディアマネージャー
サイトマップ
現在位置:
Dokuwiki.fl8.jp
»
15_python
»
16 共用サーバで、pythonインストール
トレース:
•
Vyatta Openvpn
15_python:16_shared_python
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== 16 共用サーバで、pythonインストール ====== 今回さくらレンタルサーバにpythonを導入してみます。 スタンダードプラン以上だとSSHが利用可能なので、スタンダードプラン利用。 ===== 環境 ===== 2023.07.31現在: さくらレンタルサーバの環境はFreeBSD13 <code> $ uname -a FreeBSD www1564.sakura.ne.jp 13.0-RELEASE-p12 </code> ===== 1.pyenvインストール ===== <code> git clone git://github.com/yyuu/pyenv.git ~/.pyenv </code> ==== パスを通す ==== <code> echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile echo 'eval "$(pyenv init -)"' >> ~/.bash_profile echo 'export TMPDIR="$HOME/tmp"' >> ~/.bash_profile </code> ==== ちゃんとインストールされているか確認 ==== <code> $ pyenv -v pyenv 2.3.23-2-gac5efed3 </code> ===== 2.virtualenvインストール ===== Pythonのバージョン切り替えできるように、virtualenvインストール <code> git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv </code> ===== 3. Pythonインストール ===== 今回は3.3.4をインストール <code> CPPFLAGS="-I/usr/local/ssl/include" LDFLAGS="-L/usr/local/ssl/lib" pyenv install 3.3.4 pyenv virtualenv 3.3.4 flask_3.3.4 pyenv global flask_3.3.4 $ pyenv version flask_3.3.4 (set by /home/hogehoge/.pyenv/version) </code> ==== pip自体更新 ==== pip install --upgrade pip ==== Flask ==== pip install Flask ==== numpy/pandas ==== <code> pip install numpy==1.9.3 pip install cython pip install pandas==0.19.0 </code> ===== 4.Flaskへのアクセス環境用意 ===== <code|.htaccess> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ /hello/index.cgi/$1 [QSA,L] <Files ~ "\.py$"> deny from all </Files> </code> <code|app.py> #!/home/hogehoge/.pyenv/versions/flask_3.3.4/bin/python # -*- coding: utf-8 -*- from flask import Flask app = Flask(__name__) @app.route('/') def index(): return "Hello World!\n" if __name__ == '__main__': app.run() </code> <code|index.cgi> #!/home/hogehoge/.pyenv/versions/flask_3.3.4/bin/python import cgitb cgitb.enable() from wsgiref.handlers import CGIHandler from app import app from sys import path path.insert(0, '/hogehoge/www/hello/') from app import app class ProxyFix(object): def __init__(self, app): self.app = app def __call__(self, environ, start_response): # ※要書き換え environ['SERVER_NAME'] = "hogehoge.sakura.ne.jp" environ['SERVER_PORT'] = "80" environ['REQUEST_METHOD'] = "GET" environ['SCRIPT_NAME'] = "" environ['PATH_INFO'] = "/" environ['QUERY_STRING'] = "" environ['SERVER_PROTOCOL'] = "HTTP/1.1" return self.app(environ, start_response) if __name__ == '__main__': app.wsgi_app = ProxyFix(app.wsgi_app) CGIHandler().run(app) </code> ==== 権限変更 ==== <code> chmod 744 index.cgi chmod 400 .htaccess </code> ==== 手動実行での動作確認 ==== <code> python index.cgi </code> ==== Webからの動作確認 ==== https://hogehoge.sakura.ne.jp/hello/ {{tag>python}}
15_python/16_shared_python.txt
· 最終更新: 2023/07/31 09:41 by
matsui
ページ用ツール
文書の表示
以前のリビジョン
バックリンク
文書の先頭へ