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
Apache 改写头痛_Apache_.htaccess_Rewrite - Fatal编程技术网

Apache 改写头痛

Apache 改写头痛,apache,.htaccess,rewrite,Apache,.htaccess,Rewrite,好的,我只是想为一个站点设置一个简单的重写规则。 首先,在httpd.conf中 LoadModule rewrite_module modules/mod_rewrite.so 然后在一个单独的文件中,我有这个别名设置 Alias /vworker/ "f:/vWorker/" <Directory "f:/vWorker/"> Options Indexes FollowSymLinks MultiViews AllowOverride all

好的,我只是想为一个站点设置一个简单的重写规则。 首先,在httpd.conf中

LoadModule rewrite_module modules/mod_rewrite.so
然后在一个单独的文件中,我有这个别名设置

Alias /vworker/ "f:/vWorker/" 

<Directory "f:/vWorker/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order allow,deny
    Allow from all
</Directory>
在那里我有一个.htaccess文件,上面写着

RewriteEngine on
RewriteRule ^redirect/([0-9]+)/?$ index.php?redirect=$1 [L]
现在,我想要的是,如果我转到它将实际调用的url

从我的观点来看,一切似乎都设置正确,如果我在.htaccess文件中放入胡言乱语,我会得到一个服务器错误,所以我知道它正在读取它

最后我看到的是一个页面,上面写着“找不到。在此服务器上找不到请求的URL/vworker/urlmask/redirect/94173336828903446。”
你知道我做错了什么吗?

一般来说,只要你有一个
别名
,你就需要一个
重写库
,使事情按预期进行

就你而言,你应该

RewriteBase /vworker/urlmask/

在与规则相同的.htaccess中。

如果您省略了“^”?如果URL是localhost/vworker/urlmask/,是否有效。。。而.htaccess在urlmask文件夹中,这应该是正确的
RewriteBase
。您可以添加类似于
rewriteloglevel2
的内容,以获取重写过程的一些日志记录(数字越大,提供的信息就越多)。事实证明,我有一个名为redirect.sql的文件,所以当我重命名该文件时,它就起作用了。但现在我遇到了资源不起作用的问题,例如图像、css等。它必须在redirect文件夹中查找它们,你知道如何解决吗?这取决于资源的位置,它们的URL是什么样的(或者应该是什么样的)。。。可能是另一个问题,我想出来了。谢谢你。
RewriteBase /vworker/urlmask/