我正在关注我的网站的单页方法,所有GET请求都构建如下: index.php?ressource = product& identifier = 5
为了获得干净的网址,我找到了一个创建了这个的生成器:
RewriteEngine On
RewriteCond %{HTTPS} !^on$ [NC]
RewriteRule . https://%{HTTP_HOST}/ [L] HTTPS_HOST ???
RewriteEngine On
RewriteRule ^([0-9a-zA-Z]+)/([0-9a-zA-Z]+)/([0-9a-zA-Z]+)$ ?ressource=$1&identifier=$2&action=$3 [L]
RewriteRule ^([0-9a-zA-Z]+)/([0-9a-zA-Z]+)$ ?ressource=$1&identifier=$2 [L]
#EOF
我添加了前三行,强制用户的客户端访问我的https网站。
现在我还希望在标识符值中包含连字符,例如文章/服务条款
我做了一些研究,我需要使用NC,QSA或两个标志,但每当我添加其中一个标志时,我都会收到服务器错误500.
答案 0 :(得分:0)
好的,我找到了在清洁网址中添加连字符的解决方案:
RewriteEngine On
RewriteRule ^([a-z]+)/([0-9a-üA-Ü\-]+)/([a-z]+)$ ?ressource=$1&identifier=$2&kwargs=$3 [L]
RewriteRule ^([a-z]+)/([0-9a-üA-Ü\-\%\s]+)$ ?ressource=$1&identifier=$2 [L]
RewriteRule ^([a-z]+)$ ?ressource=$1 [L]
连字符必须添加到正则表达式