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

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

ただいまの
回答率

87.78%

Python:Djangoのrunserverが正常に起動しない

解決済

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 2,789

score 5

自端末をwebサーバーにしてpythonで作成したプログラムを動作させることを目標として勉強しておりますが、Djangoで正しくlocalhostをうまく読み込むことができずに行き詰まっております。
恐らくApache で色々試していたことが悪影響を及ぼしている気がしております。
作業内容は下記に記載しておりますが、初心者のため必要な情報が漏れていれば申し訳ありません。どうかご教授のほどお願いいたします。具体的に行ったことは、

①まずはWebサーバーにはApache が必要だと思い、Apache でサーバー環境を構築しました。
⇒C:\Apache24\bin\httpd.exeをコマンドプロンプトで立ち上げ、localhostでC:\Apache24\htdocs\index.htmlがつながるようになりました。
(その際設定したhttpd.confでは、下記部分を変更しております)
・Listen 80
・ServerAdmin 〇〇〇@〇〇〇〇.jp (存在してあるアドレス)
・ServerName 〇〇〇.co.jp:80 (仮の適当な名前を設定しました)

また、 Windows Deffenderファイアフォールの許可されたアプリで、「Apache HTTP Server」にプライベート/パプリックにチェック入れて公開できるようにもしておりました。

②次に、Djangoを学んでいる中で、runserverを起動する局面に入りました。

・プロジェクトの作成
django-admin startproject manager_project
⇒無事にプロジェクトは作成されました。下記のようなファイル等が作成されています。

C:\Programing\manager_project\
manager_project
-- init.py
-- asgi.py
-- settings.py
-- urls.py
-- wsgi.py
manage.py

・サーバーの起動(コマンドプロンプト)
cd C:\Programing\manager_project

C:\Programing\manager_project>python manage.py runserver

C:\Programing\manager_project

こんな感じで無反応でrunserverが動作したかどうか不明なのですが、

・続けてブラウザーのアドレスバーにローカルサーバーアドレスを入力します。
本来であれば、Django のサンプルページが表示されるはずなのですが、下記のような動作になります。

「http://127.0.0.1:8000/」
を入力すると、「エラーメッセージ」にあるエラーが生じます。

「http://localhost/」
を入力すると、Apache(①)で設定したindex.htmlが読み込まれてしまいます。httpd.exeは立ち上げていません。
Djangoの設定を進めているのに、なぜにここでApacheで設定したwebページが出てくるのかまるでわかりません。

pythonのパスが通っていないのでしょうか。しかしプロジェクトを作る度に環境変数を変更してパスを通さないといけないというのもスマートな方法ではないのでこれは違うと思い行っていません。(Pythonの設定を置いているC:\Users\〇〇\AppData\Local\Programs\Python\Python37-32にはパスを通しています)
そもそもDjangoのrunserverを使えばApache は使わなくてもよいのかわからず迷走を続けておりますが、まずはDjangoでrunserverが動くようにしたいと思っております。

これを試してみれば、というのでもよいので、アドバイスいただけると幸いです。

発生している問題・エラーメッセージ

 このページを表示できません
 Web アドレス http://127.0.0.1:8000  が正しいか確かめてください

該当のソースコード

・サーバーの起動(コマンドプロンプト)
cd C:\Programing\manager_project

C:\Programing\manager_project>python manage.py runserver

C:\Programing\manager_project

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

Python:version3.7.1rc1
Django:version3.0
Apache:version2.4.41

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

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

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

    クリップを取り消します

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

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

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

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

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

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

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

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

    質問の評価を下げる

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

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

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

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

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

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

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

    詳細な説明はこちら

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

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

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

質問への追記・修正、ベストアンサー選択の依頼

  • happyriver

    2020/01/23 14:57 編集

    頂戴したアドバイスを参考にいくつか試してみました。

    ◆環境変数に「C:\Programing\manager_project」を追加した上でコマンドプロンプト再起動、再実行。
    ⇒動作に全く変わりなし。

    ◆Python の練習用に使用しているpathに「manager_project」ファイルをコピーして実行。返答がありました。ここではPythonが動く模様ですが、エラーが発生しました↓

    cd C:\Users\〇〇\AppData\Local\Programs\Python\Python37-32>
    A. >python manage.py runserver 0.0.0.0:8000
    B. >python manage.py runserver

    A、Bのコマンドは共に同じ下記のようなエラーでした。
    ----------------------------------------------
    Watching for file changes with StatReloader
    Performing system checks...
    Exception in thread django-main-thread:
    Traceback (most recent call last):

    …(ファイルを一つ一つチェックし始めたのでしばらく省略)

    File "C:\Users\〇〇\AppData\Local\Programs\Python\Python37-32\lib\pathlib.py", line 187, in resolve
    return self._ext_to_normal(_getfinalpathname(s))
    OSError: [WinError 123] ファイル名、ディレクトリ名、またはボリューム ラベルの構 文が間違っています。: '<frozen importlib._bootstrap>'
    ----------------------------------------------

    ①「C:\Users\〇〇\AppData\Local\Programs\Python\Python37-32\Lib」でエラーが出ていますが、この中に下記のPythonファイルがあります。おかしそうな名称のファイルはないと思うのですが(拡張子「.py」は省いてます)、何かエラーの原因が特定できますでしょうか。
    abc,aifc,antigravity,argparse,ast,asynchat,asyncore,base64,bdb,binhex,bisect,bz2,calendar,cgi,cgitb,chunk,cmd,code,codecs,codeop,colorsys,compileall,configparser,contextlib,contextvars,copy,copyreg,cProfile,crypt,csv,dataclasses,datetime,decimal,difflib,dis,doctest,dummy_threading,enum,filecmp,fileinput,fnmatch,formatter,fractions,ftplib,functools,genericpath,getopt,getpass,gettext,glob,gzip,hashlib,heapq,hmac,imaplib,imghdr,imp,inspect,io,ipaddress,keyword,linecache,locale,lzma,macpath,mailbox,mailcap,mimetypes,modulefinder,netrc,nntplib,ntpath,nturl2path,numbers,opcode,operator,optparse,os,pathlib,pdb,pickle,pickletools,pipes,pkgutil,platform,plistlib,poplib,posixpath,pprint,profile,pstats,pty,pyclbr,pydoc,py_compile,queue,quopri,random,re,reprlib,rlcompleter,runpy,sched,secrets,selectors,shelve,shlex,shutil,signal,site,smtpd,smtplib,sndhdr,socket,socketserver,sre_compile,sre_constants,sre_parse,ssl,stat,statistics,string,stringprep,struct,subprocess,sunau,symbol,symtable,sysconfig,tabnanny,tarfile,telnetlib,tempfile,textwrap,this,threading,timeit,token,tokenize,trace,traceback,tracemalloc,tty,turtle,types,typing,uu,uuid,warnings,wave,weakref,webbrowser,xdrlib,zipapp,zipfile,_bootlocale,_collections_abc,_compat_pickle,_compression,_dummy_thread,_markupbase,_osx_support,_pydecimal,_pyio,_py_abc,_sitebuiltins,_strptime,_threading_local,_weakrefset,__future__,__phello__.foo

    ②そもそも、Python用に作成した「Python37-32」のフォルダの場所で動かすのではなく、Django用に作成した「C:\Programing\manager_project」で動作させたいのですが、これは難しいのでしょうか?

    キャンセル

  • t_obara

    2020/01/23 15:25

    > 環境変数に「C:\Programing\manager_project」を追加

    これは認識違いです。python.exeがあるパスを追加すべきです。

    キャンセル

  • happyriver

    2020/01/24 11:29

    ありがとうございます、環境変数にはpython.exeがあるパスを追加する、ということが分かっただけでも進歩です。

    キャンセル

回答 2

check解決した方法

0

結局、アンインストールして、Anacondaでインストールして動作改善しました。

お手数をおかけしました。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

0

結局、アンインストールして、Anacondaで入れる

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

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

  • ただいまの回答率 87.78%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

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