0

URLでのみ単一のスラッシュを検出するのに問題があります。必要なURLは

http://sitename.com/ユーザー名

この Rewrite RULE を通じて、ユーザー名をキャプチャできますが、先頭のスラッシュにも有効であり、これは望ましくありません。

RewriteRule ([A-Za-z0-9]+){0,1}$ index.php?c=profile&val=$1 [NC,L]

^開始記号は何も返さないので削除しました。現在、ローカルホストでテストしているため、テストURLは

http://localhost/projectname/username

サーバー上で

http://sitename.com/username

これは私の完全な .htaccess です

RewriteEngine On
RewriteBase /projectname/

RewriteCond $1 !^(maintainance\.php|index\.php|files|images|robots\.txt|css|js)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [PT,L]

RewriteRule ^([A-Za-z0-9]+){0,1}$ index.php?c=profile&val=$1 [NC,L]

誰でも rewriteRule を介して単一のスラッシュのユーザー名を取得する方法を教えてください

どんな助けでも大歓迎です。

ありがとう

4

1 に答える 1

0

次の htaccess スクリプトを試してください。valで url 値を取得できます。爆発する/と、ユーザー名を取得できます。

RewriteEngine On
RewriteBase /projectname/
RewriteRule ^([A-Za-z0-9]+){0,1}$ index.php?c=profile&val=%{REQUEST_URI} [L,NC,QSA]
于 2013-04-15T04:51:29.323 に答える