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
.htaccess htaccess过滤器没有';行不通_.htaccess_Url Rewriting - Fatal编程技术网

.htaccess htaccess过滤器没有';行不通

.htaccess htaccess过滤器没有';行不通,.htaccess,url-rewriting,.htaccess,Url Rewriting,我试图重写我的url,但我也在使用路由器。 因此,我希望路由器控制错误页面,例如错误404 not found,而不是我的htaccess文件。除了我的htaccess文件中的过滤器字符串外,其他一切都工作得非常好。这是重写行: RewriteEngine On RewriteRule ^([a-zA-Z0-9-z\-\_]+)$ index.php?urlpath=$1 所以问题是它不接受这样的字符。及/ 所以这是可行的: 但这是行不通的: 这也行不通: 最后一个:

我试图重写我的url,但我也在使用路由器。 因此,我希望路由器控制错误页面,例如错误404 not found,而不是我的htaccess文件。除了我的htaccess文件中的过滤器字符串外,其他一切都工作得非常好。这是重写行:

    RewriteEngine On
      RewriteRule ^([a-zA-Z0-9-z\-\_]+)$    index.php?urlpath=$1
所以问题是它不接受这样的字符。及/

所以这是可行的:

但这是行不通的:

这也行不通:

最后一个:


我希望我的问题在这方面是清楚的。。。你可以自己在

上查看,这是因为你的正则表达式不允许点斜杠或正斜杠

您可以使用此规则代替现有规则:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .+ index.php?urlpath=$0 [L,QSA]

它认为url是“urlpath=”而不是“urlpath=”关于“哦,对不起,我的错”。我修正了我的规则中的一个拼写错误,请现在试试。谢谢,老兄,修正了!我把你的问题设为解决这个问题的办法!顺便说一句,由于我还在开发我的网站,我想知道你是否喜欢我的网站?thnx,我非常感谢!