質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.36%

  • Python

    9104questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Python 3.x

    7315questions

    Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

  • SSH

    587questions

    SSH(Secure Shell)は、セキュアチャネルを通してデータを交換するためのネットワークプロトコルです。リモートサーバーへのコマンド実行やファイル転送を行う時に一般的に使用されます。

エックスサーバー にpython3を導入したい

解決済

回答 1

投稿

  • 評価
  • クリップ 1
  • VIEW 771

hisui123

score 11

エックスサーバー にpython3を導入したい。
https://www.xserver.ne.jp/

やりたい事:
ブロックチェーン関係を色々試してみたい
https://qiita.com/weedslayer/items/d1aabe7cf31d182481fb

試した事:
https://paiza.io/
でpython3を使ったコードが実行できた事を確認しました。
できればエックスサーバーでも同様の事を行いたい。

エックスサーバーでPython+mySQL+Flask - Qiita
https://qiita.com/ShimantoAkira/items/37d09aca38d9e46ddd9a
XserverでFlask(Pythonフレームワーク)を利用する方法
http://www.wanna-continue.com/entry/2017/02/02/Xserver%E3%81%A7Flask%EF%BC%88Python%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF%EF%BC%89%E3%82%92%E5%88%A9%E7%94%A8%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95

エックスサーバー にsshでmac環境から接続して、
pyenvをインストールした所まではできましたが、
pythonをインストールする為に、

pyenv install 3.4.2

をしてもエラーで弾かれてしまいます・・・。

WARNING: The Python bz2 extension was not compiled. Missing the bzip2 lib?
WARNING: The Python readline extension was not compiled. Missing the GNU readline lib?
ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib?

Please consult to the Wiki page to fix the problem.
https://github.com/pyenv/pyenv/wiki/Common-build-problems

BUILD FAILED (CentOS Linux 7 using python-build 1.2.4)

ただ、ネットで色々見ると、
エックスサーバー 上にpyenvを導入し、python3環境を構築された方がいるみたいなので、
その方法を知りたいです。

python3環境を構築する為なら導入方法はpyenvに限定しません。

宜しくお願い致します。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

checkベストアンサー

+1

python3でブロックチェーンを作ってみる - Qiita

このページは標準モジュールしか使っていないのでライブラリのインストールは不要です。そしてエックスサーバーはpython3.3.1がデフォルトで使えるので、そのままコードを持っていけば動きそうな気がします。python3.3.1の処理系は恐らくpython3というコマンドで起動すれば動くのでしょう。

mySQLやFlaskを使いたい・・・ということだと、まあ要はぜんぶユーザ権限のディレクトリ(home)以下に入れればできるって趣旨の話なんでしょうが、これでちゃんと動かすにはそれなりのスキルが要求されそうです。管理者権限の取れるVPSを契約した方が良いでしょう(ただしユーザがやるべきことは増えます。ハックされないように管理しないといけない)。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/05/05 04:44 編集

    ご回答ありがとうございます。

    #hello_world.py

    のファイルに

    #!/usr/bin/python
    print "Content-Type: text/html\n\n"
    print "hello_world"

    print("hello_world_ex")


    #.htaccess

    のファイルに
    AddHandler cgi-script .py

    で実行した場合、
    hello_world hello_world_ex

    の結果は得られるのですが、
    これはデフォルトのpython2系の結果だと考えています。


    #!/usr/bin/python
    の部分を
    #!/usr/bin/python3

    と変えた場合は500エラーとなりました。

    コードの指定の表記が違うのでしょうか?

    また、この質問を作成後に諸々進めた結果、
    sshで接続し、コマンドプロント上で
    python -V
    とした場合、
    Python 3.6.0 :: Anaconda 4.3.0 (64-bit)
    と表示させるまでになりました(以前はpython2系の表示でした)

    その為、python3系に切り替えは出来ている様に思えるのですが、
    web上の/public_html/以下の階層で実行結果の表示方法がまだ分からない状況です。

    エックスサーバー とpythonのライブラリなどの導入関係を調べた所、管理者権限が取れない為、pipなどの導入が難しいなど、諸々やりづらい環境である事は確認していますが、djangoなどが導入出来たなどネットの情報を得られたので、行けるんじゃないかと、試しながら進めている状況です。

    仕事で必須ではないが、現在契約中のエックスサーバー で出来るのであれば、環境構築できたら程度です。
    ですが場合によってはvpsなどの適切な環境への契約も考慮に入れたいと思います。

    キャンセル

  • 2018/05/05 05:18

    そうですか。私は回答に書いた以上のことはわからないので、頑張ってください

    キャンセル

  • 2018/05/05 05:24

    あー、でもググったら#!/usr/bin/python3は
    https://www.xserver.ne.jp/news_detail.php?view_id=1649
    https://www.xserver.ne.jp/manual/man_program_soft.php
    どれが最新の情報なのかいまいちわかりませんが(こうして見るとpython3.4もあるのか? 更にバージョン上がってる可能性もありそうだし。もしくはサーバのプランによって違うとかも)、あるにはあるみたいです。python3.3とかpython3.4のように指定しろと主張しています。ls /usr/bin/ | grep pythonとかで目当てのものが見つかるかな?

    キャンセル

  • 2018/05/05 05:47 編集

    その後、結論から言うと、
    ご指摘の通り、
    #!/usr/bin/python3
    でのweb上での実行結果が得られました。

    エックスサーバー のssh接続を行い、
    コマンドプロントで

    $ /usr/bin/python

    を行い、

    Python 2.7.5 (default, Aug 4 2017, 00:39:18)
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> exit()

    まずPython2系が設定されている事を確認。

    次に、

    $ /usr/bin/python3



    Python 3.4.5 (default, Dec 11 2017, 14:22:24)
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> exit()

    のPython3系が使える事を確認。

    その為、
    #!/usr/bin/python3
    は問題なくパスが通ると考え色々コードを試した結果、

    /*** hello_world.py ***/

    #!/usr/bin/python3
    print("Content-type: text/html\n")
    print("<html><body>Python is awesome !</body></html>")


    /*** .htaccess ***/

    AddHandler cgi-script .py


    の2ファイルの構成でなんとかweb上で表示ができた事を確認しました。

    これから色々試して行こうと思います。
    ありがとうございました。


    ちなみに

    $ ls /usr/bin/ | grep python
    は、

    fail2ban-python
    python
    python2
    python2.7
    python3
    python3.4
    python3.4m

    でした。
    諸々ありがとうございました。

    キャンセル

同じタグがついた質問を見る

  • Python

    9104questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Python 3.x

    7315questions

    Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

  • SSH

    587questions

    SSH(Secure Shell)は、セキュアチャネルを通してデータを交換するためのネットワークプロトコルです。リモートサーバーへのコマンド実行やファイル転送を行う時に一般的に使用されます。