私は .htaccess ファイルに詳しくないので、私の質問が少しばかげている場合はすみません。
お願いするときは
localhost/mydomain/blog.php
この形式の URL が必要です。
localhost/mydomain/blog/
私のウェブサイトのディレクトリは次のようになります。
.htaccess ファイルには次のものが含まれます。
.php 拡張子を削除
<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [NC,L]
</IfModule>
このリンクで
<a href="blog">Blog</a>
URL は次のとおりです。
localhost/createforweb_1.1/blog
しかし、末尾にスラッシュを追加したいので、これらの行を htaccess に追加すると:
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://localhost/createforweb_1.1/$1/ [L,R=301]
次のエラーが表示されます。
The requested URL /blog/.php was not found on this server.
非常に単純だと思いますが、.htaccess の書き換えの経験が少しあります。
最新の .htaccess ファイル (ファイル全体)
<IfModule mod_rewrite.c>
Options +FollowSymlinks
# Options +SymLinksIfOwnerMatch
RewriteEngine On
# RewriteBase /
</IfModule>
Options -MultiViews
## Adding a trailing slash
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !/$
RewriteRule . %{REQUEST_URI}/ [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*?)/?$ /$1.php [L]
代替ソリューション
すべてのページのフォルダーを作成し、ファイルをその中に移動して、名前を index.php に変更しました。新しいディレクトリ ツリーは次のようになります。
ブログ フォルダーをリクエストすると、blog/index.php が読み込まれます。URL は createforweb.gr/blog/ になります
これは受け入れられる解決策ですか、それとも将来的に問題が発生するでしょうか?