Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在php中将GET方法URL更改为clean URL?_Php_.htaccess_Url_Clean Url_Get Method - Fatal编程技术网

如何在php中将GET方法URL更改为clean URL?

如何在php中将GET方法URL更改为clean URL?,php,.htaccess,url,clean-url,get-method,Php,.htaccess,Url,Clean Url,Get Method,这是由php中的GET方法创建的URL,用于将数据参数发送到archives.html页面: 有没有办法清理这个URL 我想这样做,我可以发送参数了 http://127.0.0.1/archives.html/16-2-2014 我可以用mod_重写吗? 我正在开发joomla3上的一个组件 RewriteEngine On RewriteRule ^([^/]*)$ /archives.html?option=com_archive&date=$1 [L] 这个htaccess可

这是由php中的GET方法创建的URL,用于将数据参数发送到archives.html页面:

有没有办法清理这个URL

我想这样做,我可以发送参数了

http://127.0.0.1/archives.html/16-2-2014
我可以用mod_重写吗? 我正在开发joomla3上的一个组件

RewriteEngine On
RewriteRule ^([^/]*)$ /archives.html?option=com_archive&date=$1 [L]
这个htaccess可以帮你完成这项工作 通过url,我想这是joomla

这个医生可能会帮你


在PHP中执行此操作的一种方法:

$original_url = 'http://127.0.0.1/archives.html?option=com_archive&date=16-2-2014';
$new_url = explode('?', $original_url);
$clean_url = $new_url[0];

您可以在根目录中使用此规则。htaccess:

RewriteEngine On

RewriteRule ^(archives\.html)/([0-9-]+)/?$ /$1/?option=com_archive&date=$2 [L,NC,QSA]

我可以用mod_重写吗?是的,谢谢你的回答。。。。但这种方法不起作用。我之前启用了mod_rewrite和.htaccess…并激活了所有本机joomla sef。RewriteRule上的RewriteEngine^[^/]*$/archives.html?option=com_archive&date=$1[L]I wana将参数从主页发送到archives.html页面。但是我的所有页面都有500个错误!包括主页希望至少这将帮助您了解…代码刚刚将URL链接到127.0..0.1,那么如何将参数发送到archive.html?尝试:RewriteRule^[^.]+\.html/[0-9-]+/?$/$1?option=com\u archive&date=$2[L,NC,QSA,R]作为您的第一条规则我也尝试过:RewriteRule[L,NC,QSA,R]。。。不可能!您必须确保这是您在root.htaccess中的第一个URL,您应该使用的URL是:http://127.0.0.1/archives.html/16-2-2014 谢谢,谢谢。您的上一个代码不工作…但我将其更改为:RewriteRule^archives\.html/[0-9-]+/?$[L,NC,QSA]…现在它工作了…您能告诉我为什么吗?啊,在$1看到更新的代码后,我少了一个斜杠。
RewriteEngine On

RewriteRule ^(archives\.html)/([0-9-]+)/?$ /$1/?option=com_archive&date=$2 [L,NC,QSA]