Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/295.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.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中使用.htaccess创建漂亮url时出现错误404_Php_.htaccess - Fatal编程技术网

尝试在php中使用.htaccess创建漂亮url时出现错误404

尝试在php中使用.htaccess创建漂亮url时出现错误404,php,.htaccess,Php,.htaccess,我想使用.htaccess在php中创建一个漂亮的规则 类似于localhost/search/name而不是像search?q=name那样使用普通的PHP方式。但我一直在实现它,因为我的所有页面现在都返回错误404,我不知道为什么 这是我的.htaccess文件: RewriteEngine on RewriteRule ^localhost/?$ search.php?name=$1 [QSA]` 这是我的search.php文件: <?php echo $_GET['n

我想使用.htaccess在php中创建一个漂亮的规则

类似于
localhost/search/name
而不是像
search?q=name
那样使用普通的PHP方式。但我一直在实现它,因为我的所有页面现在都返回
错误404
,我不知道为什么

这是我的.htaccess文件:

RewriteEngine on
RewriteRule ^localhost/?$ search.php?name=$1 [QSA]`
这是我的search.php文件:

<?php 
    echo $_GET['name']; 
?>

因此,当我访问类似于
localhost/search/myname
的内容时,它会返回
error 404


我做错了什么?

您需要首先将/search/作为重写规则的一部分,然后我还建议在QSA之后添加“L”标志,以便该规则是调用时处理的最后一个规则

然后,您需要从url捕获名称,并将其作为get参数传递给视图

我还从URL中输入了localhost,因为您不需要将其作为目标

试试这个:

RewriteRule ^search/(.*)$ search.php?name=$1 [QSA,L]

抱歉,我已经删除了冒犯的空间