Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

xサーバーでリンクの設定(.htaccess)に詰まってしまいました。

解決したいこと

現在flaskを用いて簡単なHPを自作しているのですが、リンクの設定で詰まってしまいました。
メインとなるHPをhttps://■■■■■■■■■.■■■■/main/indexではなくhttps://■■■■■■■■■.■■■■/indexと表示させたい。

発生している問題・エラー

https://■■■■■■■■■.■■■■/indexこちらのリンクでアクセスしようとすると404エラーが発生してしまいます。
image.png

該当するソースコード

下記内容が初めに実行したコードになります。

.htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.cgi/$1 [QSA,L]
<Files ~ "\.py$">
    deny from all
</Files>

次にGeminiに添削してもらい実行したコードが下記になります。(こちらも404エラーが発生してしまいます。)

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ /index.cgi/$1 [QSA,L]

<FilesMatch "\.py$">
    Order deny,allow
    Deny from all
</FilesMatch>

最後まで読んでいただきありがとうございます。
ご存じの方がいらっしゃいましたら教えていただけますと幸いです。
何卒よろしくお願いいたします。

0

1Answer

現在発生している問題は下記にアクセスした際に404エラ-となるとの事でしょうか?

https://ドメイン/index

上記の場合ですと.htaccessでのリダイレクトではなく
Flask側にてコンテンツへのルート設定変更が必要ではないでしょうか?

.htaccessでのリダイレクトはURLのみを書き換える動作ではなく
指定されたURLに転送するような動作となります。
その為、先ほどのURLにコンテンツがない場合404となるかと思います。

その他の方法としてはApacheのmod_rewriteを使用する事で
URLの書き換えのみを行う事ができますが環境はブラウザー等によっては正常に動作しない可能性があります。

0Like

Comments

  1. @Kobayashi0620

    Questioner

    他の作業で詰まってしまっていて返信が遅くなってしまい申し訳ございません。
    再度確認してみたところ404ではなく403エラーでした。

    HPのためmod_rewrite以外の方法を教えていただけると幸いです。
    image.png

Your answer might help someone💌