1

私は.htaccessの初心者ですが、誰かがこれを手伝ってくれますか?

//私の.htaccessコード

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /alumini/profile.php?username=$1

//上記でURLを再作成できます

localhost / alumini / profile.php?username = name

localhost / alumini / name

しかし、loacalhost / alumini/index.phploacalhost/aluminiに非表示にしたい

簡単に...。

htaccessコードでインデックスページを非表示にしたいのですが、変換する必要があります

localhost / alumini / profile.php?username = name

localhost / alumini / name

4

2 に答える 2

2

最初のリクエストはリダイレクトではなく、書き換えです。2番目はリダイレクトです。書き直しの場合、次のルールでトリックを実行する必要があります(テストされていません)。

RewriteRule ^localhost/alumini/([a-zA-Z]+)$ /alumini/profile.php?username=$1

角かっこ内の正規表現は、1つ以上の大文字または小文字と一致し、他には何も一致せず、一致の値が$1に渡されます。ユーザー名の形式によっては、正規表現を変更する必要がある場合があります。

およびindex.phpリダイレクトの場合(存在する場合はindex.phpを削除するため):

Redirect 301 /alumini/index.php http://localhost/alumini

301は、ページが永続的に移動したという事実を表しており、index.php以外のページのみがインデックスに登録されるため、SEOに適しています。

于 2012-11-16T12:01:59.027 に答える
0
RewriteRule ^localhost/alumini/([a-zA-Z0-9]+)$ /alumini/profile.php?username=$1
RewriteRule ^localhost/alumini$ /alumini/index.php
于 2012-11-16T12:20:35.870 に答える