0

すべてのページ名と拡張子を URL から非表示にしたいのですが、

htt://www.domain.com/innerpage.php
to
http://www.domain.com/

http://www.domain.com/subfolder/innerpage.php
to
http://www.domain.com/subfolder/

http://www.domain.com/subfolder/subfolder/innerpage.php
to
http://www.domain.com/subfolder/subfolder/

のように使用しました

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\..+$
RewriteCond %{REQUEST_URI} !/$
RewriteRule ^(.*)$ http://www.domain.com/$1/ [R=301,L]
RewriteRule ^(.*)$ http://www.domain.com/subfolder/$1/ [R=301,L]
RewriteRule ^(.*)$ http://www.domain.com/subfolder/subfolder/$1/ [R=301,L]
RewriteRule ^(.*)/$ $1.php [L]

うまくいかない

4

2 に答える 2

0

私はこれがあなたのために働くと思います

DirectoryIndex innerpage.php index.php index.html index.htm

これをあなたの最初の行として入れてください.htaccessinnerpage.phpこのディレクティブは、ディレクトリにページが指定されていないかどうかを探します。サイトの URL 内のすべてのページを非表示にしたい場合、それはお勧めできません。

于 2013-04-07T15:27:46.090 に答える
-1

次の一連のディレクティブを試してください。

Options +FollowSymlinks
RewriteEngine on

RewriteRule ^/?$ /innerpage.php
RewriteRule ^([a-z0-9]+)/?$ /$1/innerpage.php
RewriteRule ^([a-z0-9]+)/([a-z0-9]+)/?$ /$1/$2/innerpage.php

RewriteRule ^innerpage.php$ / [R]
RewriteRule ^([a-z0-9]+)/innerpage.php$ /$1 [R]
RewriteRule ^([a-z0-9]+)/([a-z0-9]+)/innerpage.php$ /$1/$2 [R]

そして、何が起こるかを驚かせてください...

于 2013-04-07T15:24:06.830 に答える