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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

Python

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

Q&A

0回答

561閲覧

flaskのrouterがうまくできない件について

tiikk

総合スコア12

Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

Python

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

0グッド

0クリップ

投稿2022/06/04 12:13

編集2022/06/04 13:35

flaskについての質問です。
シンレンタルサーバー(https://server.xfree.ne.jp/) というサーバーにflaskで作ったものを上げています。
index.htmlは表示されるのですが、loginというurlに変わってもindex.htmlが出てきます。

python

1@app.route('/login') 2def Login(): 3 return 'hello'

上記の部分がうまく動きません。
この部分が動くようにしたいです。
cgiかhtaccessのファイルが違うのかなと思っています。
ローカル環境で試した場合だとうまく動きました。

なにかわかることがあれば教えてください。お願い致します。

python

1from flask import Flask, render_template 2 3app = Flask(__name__, static_folder='.', static_url_path='') 4@app.route('/') 5def index(): 6 return render_template("index.html", image_path=url) 7 8 9@app.route('/login') 10def Login(): 11 return 'hello' 12 13 14if __name__ == "__main__": 15 app.run(port='0.0.0.0', debug=True)

index.cgi

1#! /home/idname/anaconda3/bin/python 2from sys import path 3from wsgiref.handlers import CGIHandler 4from flask_sample import app 5 6import cgitb 7cgitb.enable() 8 9 10path.insert(0, '/サーバーの名前/portfolio/') 11 12 13class ProxyFix(object): 14 def __init__(self, app): 15 self.app = app 16 17 def __call__(self, environ, start_response): 18 # ※要書き換え 19 environ['SERVER_NAME'] = "サーバーの名前" 20 environ['SERVER_PORT'] = "80" 21 environ['REQUEST_METHOD'] = "GET" 22 environ['SCRIPT_NAME'] = "" 23 environ['PATH_INFO'] = "/" 24 environ['QUERY_STRING'] = "" 25 environ['SERVER_PROTOCOL'] = "HTTP/1.1" 26 return self.app(environ, start_response) 27 28 29if __name__ == '__main__': 30 app.wsgi_app = ProxyFix(app.wsgi_app) 31 CGIHandler().run(app) 32

htaccess

1RewriteEngine On 2DirectoryIndex index.cgi 3RewriteCond %{REQUEST_FILENAME} !-f 4RewriteRule ^(.*)$ /portfolio/index.cgi/$1 [QSA,L]

参考にしたサイト
https://dattesar.com/lolipop-pip-flask/

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問