Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

【至急】XserverVPSでApacheを使用して、Flaskで作成したサイトを公開したのですが、サイト確認することができません。手順があっているか確認していただきたいです。

解決したいこと

Flaskで作成したデモサイトを公開したのですが、ドメインを検索してもサイトを開くことができません。
そのため、VPSでのデプロイ手順があっているかどうか確認していただきたいです。

※前提

手順はGeminiに質問して得た手順になります。

以下参考にした記事
https://sabameijin.com/ubuntu-virtual-host/
https://qiita.com/mtitg/items/08fdf6c7462bb1dae038
https://qiita.com/andromedroid/items/4a0073f65c9a1b472a2e

環境

Ubuntu 24.04

1.SSH接続

ssh -i C:\Users\wwwww\Documents\pgworks\VPS\ssh\ssh.pem root@■■■.■■.■■.■■■

2.環境構築

sudo apt update
sudo apt install python3
sudo apt install apache2

3.Apache起動確認

sudo systemctl start apache2

1.パケットフィルター設定(VPSパネル):OFF
image.png

2.■■■.■■.■■.■■■ アドレスバーに打ち込み画面が表示されればOK
image.png

4.仮想環境作成

python3 -m venv test
.path
/root/test

image.png

5.仮想環境の有効化

source test/bin/activate

6.ライブラリのインストール

pip install Flask
pip install gunicorn

7.ソースコードの配置

.path
var/www/test

image.png

app.py
from flask import Flask, render_template, request

app = Flask(__name__)

"""
*index_pageに遷移するプログラム
*引数なし
"""
@app.route('/')
def index_page():
    return render_template('index.html')
index.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1>hello, world</h1>
</body>
</html>
requirements.txt
flask
gunicorn

8.パーミッション設定

sudo chmod -R 755 /var/www/test

9.WSGIファイルの作成

import sys
sys.path.sys.path.append('/var/www/test')

from test import app as application
if __name__ == "__main__":
    application.run()

image.png

10.Apache設定ファイル作成(.conf)

.conf
<VirtualHost *:80>
    ServerName vna.f5.si
    ServerAlias www.vna.f5.si

    # ドキュメントルートの設定
    DocumentRoot /var/www/test

    #Includeディレクティブの設定
    Include /etc/apache2/sites-available/test.conf

    # WSGIの設定
    <Directory /var/www/test>
        <Files wsgi.py>
            Require all granted
        </Files>
    </Directory>
    WSGIScriptAlias / /var/www/test/wsgi.py
    WSGIDaemonProcess test python-path=/var/www/test
    WSGIProcessGroup test

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

11.confファイルの配置

.path
/etc/apache2/sites-available

image.png

12.設定ファイルの有効化

sudo a2ensite test.conf
sudo systemctl reload apache2

image.png

DNS設定

image.png

image.png

最後まで読んでいただきありがとうございます。
以上が自分が行った手順になります。
間違っている個所がありましたら教えていただけますと幸いです。
何卒よろしくお願いいたします。

0

2Answer

【至急】とか書くのは止めた方が良いです。自分のことしか考えてない人とか思われて、逆効果になりがちですので。

@RK_Nakagawa さんの回答欄下の質問者さんのコメントで、

IPアドレス設定行いましたが、表示されませんでした。

とのことですが、最初の質問にあった www.vna.f5.si はダメなものの、vna.f5.si は自分の環境からでも名前解決できます。

ping.jpg

試しに、自分の環境から http://vna.f5.si/ をブラウザ (Chrome) のアドレスバーに打ち込んで要求をかけてみましたが、応答は返ってきます。

response.jpg

なので、少なくとも Web サーバーは動いています。(その先に進んで、デプロイした Web アプリが期待どおり動くかは分かりませんが)

1Like

Comments

  1. @Kobayashi0620

    Questioner

    テストでの公開のためドメイン代をかけたくないと思い、下記リンクを参考に無料で使用できるドメインを取得しました。
    https://seotimes.jp/free-domain-service-seo/
    https://ddns.kuku.lu/

    ムームードメイン等でドメインを取得して設定を行えば手順的にはサイトを公開できますでしょうか?

  2. ドメインの種類の話ではなく、使用方法の話になります。
    f5.siの使用方法に従ってwww.vna.f5.siにIPアドレスを設定してください。

    記載された手順で言えばDNS設定、以降が誤り。

    f5.siのサーバーに以下のようなリクエストを送るなりしてアドレスを設定してもう一度やってみてください。
    https://f5.si/update.php?domain=ユーザ名&password=パスワードもしくはAPIトークン&ip=IPv4アドレスもしくはIPv6アドレス。

  3. @Kobayashi0620

    Questioner

    ありがとうございます!
    IPアドレスの設定やってみます!

  4. @Kobayashi0620

    Questioner

    IPアドレス設定行いましたが、表示されませんでした。
    ■■■.■■.■■.■■■はXserverVPSに記載されているIPアドレスを設定しました。

    image.png

    image.png

    image.png

    image.png

  5. 横から失礼します。そもそもDNSはその仕組み上、Aレコード設定したからといって、

    ただちにそれが反映されるものではありません。時間をおいて、再度、該当ドメインにアクセスすることを推奨します。

Your answer might help someone💌