Apache 改写头痛
好的,我只是想为一个站点设置一个简单的重写规则。 首先,在httpd.conf中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
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/