简体   繁体   English

htaccess我的网站的漂亮网址

[英]htaccess pretty urls for my site

I have a php website 我有一个PHP网站
I tried different htaccess codes but not getting what I want 我尝试了不同的htaccess代码,但没有得到我想要的
I have the the following urls 我有以下网址

http://mydomain/users.php?name=alex

want to look like 想看起来像

http://mydomain/users/alex

and

http://mydomain/items.php?name=pepsi

want to look like 想看起来像

http://mydomain/items/pepsi

or it will be very good to hide users and items too 或者也隐藏用户和物品会很好

I tried 我试过了

RewriteEngine On
RewriteCond %{THE_REQUEST} \?name=([^&\ ]+)($|\ )
RewriteRule ^ /%1? [L,R=301]

and

RewriteEngine On
RewriteRule ^([a-zA-Z0-9_-]+)$ users.php?name=$1
RewriteRule ^([a-zA-Z0-9_-]+)/$ users.php?name=$1

and more but these are not working 还有更多,但这些都不起作用

This should work: 这应该工作:

RewriteEngine on
RewriteCond %{THE_REQUEST} ^(GET|POST)\ /users\.php\?name=(.*)\ HTTP
RewriteRule ^ /users/%2\? [R=301,L]

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

RewriteCond %{THE_REQUEST} ^(GET|POST)\ /items\.php\?name=(.*)\ HTTP
RewriteRule ^ /items/%2\? [R=301,L]
RewriteRule ^items/(.*)$ /items.php?name=$1 [L]
RewriteEngine on
RewriteRule   ^/(.*)/(.*)  $1.php?name=$2 [L]

Put this code in your DOCUMENT_ROOT/.htaccess file: 将此代码放在您的DOCUMENT_ROOT/.htaccess文件中:

Options +FollowSymLinks -MultiViews
RewriteEngine On

RewriteCond %{THE_REQUEST} \s/+([^.]+)\.php\?name=([^&\s]+) [NC]
RewriteRule ^ /%1/%2? [R=301,L,NE]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1\.php -f [NC]
RewriteRule ^([^/.]+)/([^/]+)/?$ /$1.php?name=$2 [L,QSA]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM