私のドメイン名はですhttps: //example.com - 私は自分の.htaccessを使ってファイル拡張子をURLから削除していますhttps: //example.com/pages/file.phpがhttps: //example.com/pages/fileとして表示されていますが、正常に動作しています。ファイル名拡張子を削除し、.htaccessでwwwからnon-wwwにリダイレクト
私は今、重複した内容のいくつかの問題を抱えているとHTTPSをリダイレクトしたいと思います: //www.example.com/pages/file へのhttps: //example.com/pages/fileを。 //www.example.com:HTTPSアクセスすることにより、
ErrorDocument 404 /404.php
RewriteEngine On
RewriteCond %{HTTP_HOST} !^example\.com$ [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)$ /$1/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1.php -f
RewriteRule ^([^/]+)/$ $1.php [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1/$2.php -f
RewriteRule ^([^/]+)/([^/]+)/?$ /$1/$2.php [L]
問題がある:私の現在の.htaccessは(それがルートディレクトリおよびサブディレクトリ/ページ一度 /に一度置か)、次のようになります。/pages/fileの場合、https: //example.com/fileにリダイレクトされていますので、/ pages/partは除外されています。これは、すべてのサブページがそのディレクトリに保存されるので非常に重要です。私はそれが重要かどうかわかりませんが、私もアクセス可能にする必要がある私のルートディレクトリにいくつかのheader.phpとfooter.phpファイルを持っています。ただ、これらの規則の下、トップへ
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1/$2.php -f
RewriteRule ^([^/]+)/([^/]+)/?$ /$1/$2.php [L]
:
あなたが言及したルールをより高い位置に移動した後も、(悲しいことに)まだ動作していませんでした。 https://example.com/pages/websiteにアクセスしようとすると、https://example.com/websiteにリダイレクトされました。 2つの.htaccessファイル(ルートに1つ、/ pages /ディレクトリに1つ)を持つことに問題があると思いますか?あなたの助けてくれてありがとう、@ Nadir Latif – Niclas
@ Niclasページディレクトリから.htaccessファイルを削除して助けてもらうことができます。 –