PHP url重写

PHP url重写,php,apache,.htaccess,url,mod-rewrite,Php,Apache,.htaccess,Url,Mod Rewrite,我正在尝试使用htaccess使PHP应用程序中的URL更干净。早些时候,我的应用程序的链接是这种格式的 http://localhost/25_2_april/video.php?cat_id=2&category=Programming-语言,但在htaccess的帮助下,我能够将其转换为 http://localhost/25_2_april/video-library/2/Programming-Language。现在的问题是,每次我运行我的应用程序时,它都会加载混乱的URL而不是干净的

我正在尝试使用htaccess使PHP应用程序中的URL更干净。早些时候,我的应用程序的链接是这种格式的

http://localhost/25_2_april/video.php?cat_id=2&category=Programming-语言
,但在htaccess的帮助下,我能够将其转换为

http://localhost/25_2_april/video-library/2/Programming-Language
。现在的问题是,每次我运行我的应用程序时,它都会加载混乱的URL而不是干净的URL,尽管当我编辑URL并使其成为干净的URL时,这也会起作用。现在有没有办法,它直接加载干净的url而不是凌乱的url

下面是锚定标签,我通过它调用这个特定页面


在html中添加静态URL时,必须将干净的URL作为以下内容传递:

<a href="<?php echo 'http://localhost/25_2_april/video-library/'.$cat_id.'/'.$cat_name; ">

您能出示您的htaccess吗?但您也可以编辑链接,使其看起来像新的链接。
Options+FollowSymLinks
RewriteEngine On
RewriteCond%{REQUEST\u FILENAME}-f
重写cond%{REQUEST_FILENAME}-d
RewriteRule^ video library/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/?$/var/www/html/25_2_april/video.php?cat_id=$1&category=$2[L]
RewriteRule^ video library/([A-Za-z0-9-]+)/?$/var/www/html/25_2_april/search_results.php?cat_id=$1[L]
@你应该把url链接放在相反的地方,htaccess将为混乱的url进行转换。我尝试了这种方法,它是有效的,但当我点击页面上显示的另一个类别时。此链接已创建
http://localhost/25_2_april/video-library/2/Programming-Lang‌​uage/15/Java
,而不是
http://localhost/25_2_april/video-library/15/Java
如果您想使用干净的url,请不要使用相对url,而是使用绝对url。我尝试过这种方法,但当我单击该页面上显示的另一个类别时,效果很好。此链接已创建
http://localhost/25_2_april/video-library/2/Programming-Language/15/Java
,而不是
http://localhost/25_2_april/video-library/15/Java