1

私は 2 つの mod を書き直そうとしています。説明させてください。


- ファイルまたはディレクトリが存在しない場合にユーザーページにリダイレクトする 1 つの書き換えが必要です。| | 私はすでにこれをしました。 - 次に、.phpファイルから拡張子を削除します。

1 つ目はすでに完了していますが、2 つ目はどうすればよいかわかりません。


私のコードはすでに:

RewriteEngine On


RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule ^(.*)$ users.php?name=$1 [QSA,L]

だから私が必要としているのは、.php 拡張子を削除して、現在の書き換え作業を維持することだけです。

4

2 に答える 2

1

これは完全な .htaccess である必要があります。

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

## To internally forward /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1.php -f
RewriteRule ^(.*?)/?$ $1.php [L]

## redirect to a userpage
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ users.php?name=$1 [QSA,L]
于 2013-04-04T14:06:30.940 に答える
0

.php 拡張子を削除します。

RewriteEngine On
# turn on the mod_rewrite engine

RewriteCond %{REQUEST_FILENAME}.php -f
# IF the request filename with .php extension is a file which exists
RewriteCond %{REQUEST_URI} !/$
# AND the request is not for a directory
RewriteRule (.*) $1\.php [L]
# redirect to the php script with the requested filename

指し示すだけです:

http://www.mysite.com/index

于 2013-04-04T01:41:07.053 に答える