1

変更できるコードは次のとおりです

mydomain.com/?name=something&action=something&other=something

mydomain.com/something/something/something

RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} -d [OR] 
RewriteCond %{SCRIPT_FILENAME} -f [OR]
RewriteRule .* - [L]

RewriteRule ^(\w+)/(\w+)/(\w+)/?$ /index?name=$1&action=$2&other=$3
RewriteRule ^(\w+)/(\w+)/?$ /index.php?name=$1&action=$2
RewriteRule ^(\w+)/?$ /index.php?name=$1

しかし、最初の「何か」がスペースを含むものである場合があり、それをフォーマットする方法がよくわかりません。たとえば、「非常にランダムなもの」。URLがaでフォーマットされていることは知って%20いますが、どうすれば.htaccessでこれを行うことができるので、URLは次のようになります

mydomain.com/something very random/somethng/something

また、最初の単語は a-と乱数で続きます。-4738

例えばmydomain.com/something very random-4738/something/something

使用している .htaccess コードでこれをどのように取得しますか?

4

1 に答える 1

0

コードをこれに置き換えます

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

RewriteCond %{SCRIPT_FILENAME} -d [OR] 
RewriteCond %{SCRIPT_FILENAME} -f [OR]
RewriteCond %{SCRIPT_FILENAME} -l
RewriteRule .* - [L]

RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ /index.php?name=$1&action=$2&other=$3 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/?$ /index.php?name=$1&action=$2 [L,QSA]
RewriteRule ^([^/]+)/?$ /index.php?name=$1 [L,QSA]
于 2012-06-03T18:55:38.260 に答える