我想在你访问非书面网址时这样做,例如:one:website.com/profile.php?name = Alex,你会被重定向到404找不到的网页。但是,如果您访问website.com/profile/Alex,它将正常工作。我怎么能这样做?
答案 0 :(得分:2)
您可以使用以下规则:
Options -MultiViews
RewriteEngine On
# 404 if using internal URL directly
RewriteCond %{THE_REQUEST} /profile\.php\?name= [NC]
RewriteRule ^ - [R=404,L]
# rewrite for /profile/alex
RewriteRule ^(profile)/([\w-]+)/?$ $1.php?name=$2 [L,QSA,NC]