내 웹 사이트는 검색 엔진입니다. 내 htaccess로 파일에서변수를 사용할 때 PHP 하이픈 문제가 발생했습니다.
나는이 :
RewriteRule ^news/(.*)\.html$ /results/news.php?name=$1
그리고 내 링크 구조는 /news/what-is-up.html
사용하여 하이픈입니다. 나는 세계 /results/news.php?name=hello 를 검색 할 때
나는 /news/hello-world.html 를 사용할 때와는 다른 결과를 얻을 수 검색이 검색 것 같다
공백 대신 하이픈을 사용하는 hello-world
의 경우 +
기호를 사용하여 쉽게 해결할 수 있지만 하이픈을 사용하고 싶습니다. 아무도 그것을하는 방법을 알고 있습니까? 나는 경우
if ($q != '') {
header('Location: http://'.$_SERVER['SERVER_NAME'].'/news/'.toAscii($q).'.html');
die();
}
else
{
header('Location:http://'.$_SERVER['SERVER_NAME'].'/news/');
die();
}
감사
하이픈 대체 용 코드 블록은 어디에 있습니까? 나는 당신의 재 작성 규칙에 문제가 있다고 생각하지 않는다. /results/news.php?name=hello-world는 /news/hello-world.html과 동일한 결과를 산출해야합니다. – Simon
키워드는 urldecode()이지만 '+'기호에 대해서만 작동합니다. – Simon
누군가가 실제로'hello-world'가 아니라'hello world'를 찾고 있다면 어떨까요? – Gumbo