[英].htaccess RewriteRule not working for two values with same code
医生守则(工作中)
RewriteEngine On
RewriteRule ^doctors/([0-9]+)\/([a-z]+)\/([a-z]+)\/?$ doc.php?doc_code=$1&firstname=$2&lastname=$3 [L,NC,R=301]
RewriteRule ^doctors/([0-9]+)\/([a-z]+)\/([a-z]+)\/([a-z]+)\/?$ doc.php?doc_code=$1&firstname=$2&lastname=$3&action=$4 [L,NC,R=301]
药房代码(无效)
RewriteRule ^/pharmacy/([0-9]+)\/([a-z]+)\/?$ pharmacy.php?id=$1&name=$2 [L,NC,R=301]
RewriteRule ^/pharmacy/([0-9]+)\/([a-z]+)\/([a-z]+)\/?$ pharmacy.php?id=$1&name=$2&action=$3 [L,NC,R=301]
当我使用下面的代码时,它对于药房来说很好用,但是目的并没有解决,因为我希望链接显示为“ /药房”而不是“ /医生”:
RewriteRule ^/doctors/([0-9]+)\/([a-z]+)\/?$ pharmacy.php?id=$1&name=$2 [L,NC,R=301]
RewriteRule ^/doctors/([0-9]+)\/([a-z]+)\/([a-z]+)\/?$ pharmacy.php?id=$1&name=$2&action=$3 [L,NC,R=301]
完整的.htacess代码:
ErrorDocument 404 /404.php
AddDefaultCharset UTF-8
Header unset ETag
FileETag None
RewriteEngine On
RewriteRule ^doctors/([0-9]+)\/([a-z]+)\/([a-z]+)\/?$ doc.php?doc_code=$1&firstname=$2&lastname=$3 [L,NC,R=301]
RewriteRule ^doctors/([0-9]+)\/([a-z]+)\/([a-z]+)\/([a-z]+)\/?$ doc.php?doc_code=$1&firstname=$2&lastname=$3&action=$4 [L,NC,QSA]
RewriteRule ^pharmacy/([0-9]+)/([a-z]+)/?$ pharmacy.php?id=$1&name=$2 [L,NC,QSA]
RewriteRule ^pharmacy/([0-9]+)/([a-z]+)/([a-z]+)/?$ pharmacy.php?id=$1&name=$2&action=$3 [L,NC,QSA]
取出斜线并关闭MultiViews
选项:
Options -MultiViews
RewriteEngine On
RewriteRule ^pharmacy/([0-9]+)/([a-z]+)/?$ pharmacy.php?id=$1&name=$2 [L,NC,QSA]
RewriteRule ^pharmacy/([0-9]+)/([a-z]+)/([a-z]+)/?$ pharmacy.php?id=$1&name=$2&action=$3 [L,NC,QSA]
另外,您也不需要R=301
因为您不想在浏览器中显示内部URL。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.