2016-12-12 1 views
0

まあ、タイトルはかなり上手くいっている。 ...私はこれまでのところ、このhtaccessファイルを持っていますが、その作業はありません...apache mod_rewriteを使ってindex.phpを隠すが残りのphpファイルをディレクトリに変更する

Options -Indexes -Multiviews 

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^/]+)/$ $1.php 
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$ 
RewriteRule (.*)$ /$1/ [R=301,L] 

を私はindex.phpを非表示にしようとしていますが、このようなfile.phpなど他のPHPファイルは、/ファイルは/ etcになります

誰も助けてくれますか?

ありがとうございました。

答えて

0

index.phpを隠す最善の方法は、決してリンクすることではなく、必要ではないし、なぜ人々がそれをするのか分からない。 href/をウェブルートにリンクするか、./を使用して現在のディレクトリにリンクします。

# 404.php file should set status with header($_SERVER['SERVER_PROTOCOL'] . ' 404 Not Found'); 
ErrorDocument 404 /404.php 
Options -Indexes -Multiviews 
RewriteEngine On 
RewriteBase/
# remove .php from legitimate requests (you should still update all the URLs served so that normal crawling/browsing doesn't 301 on every link) 
RewriteCond %{THE_REQUEST} ^\S++\s++((/[^?\s]+?)??/index\.php)(\?\S*+)?\s [OR] 
RewriteCond %{THE_REQUEST} ^\S++\s++((/[^?\s]+?)\.php)(\?\S*+)?\s 
RewriteCond %{DOCUMENT_ROOT}%1 -f 
RewriteRule^%2/%3 [NS,NE,L,R=301] 
# add trailing/to legitimate requests missing it 
RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteRule .+ $0/ [NS,NE,L,R=301] 
# rewrite all requests that look like directories to files, /foo/ to /foo.php and /bar/baz/qux/ to /bar/baz/qux.php 
RewriteCond %{DOCUMENT_ROOT}$1.php -f 
RewriteRule ^([^./][^/]*+(?:/[^./][^/]*+)*)/$ $1.php [NS,L,DPI] 
# allow everything else to be processed as normal file request or 404 
+0

あなたは私の問題を誤解していると思います。あなたは "ファイルにディレクトリのように見えるすべての要求を書く"と書いたが、phpファイルをディレクトリにではなくphpファイルに変更する必要があった。また、index.phpを非表示にする方法は、ユーザーがindex.phpを入力すると自動的に/とPHPが表示されます。 – FoxyFish

+0

これでphpファイルはなくなりました。あるいは、実際のファイルは '/ bar/baz/qux.php'のようなもので、URLが'/bar/baz/qux/'になるようにしたいのですか? – Walf

+0

私はあなたが私の解決策を誤解したと思います。外部リダイレクトを望んでいるとは決して言わず、 '/ file /'を 'file.php'に解決したいだけです。これは内部の書き換えによって行われます。 – Walf

関連する問題