我正在设置一个WordPress开发环境,并对DocumentRoot的目录结构有这个想法;
.htaccess
tags
- 2.8
- 2.9
- 3.0
我的想法是使用mod重写来切换不同的标签目录,但到目前为止,我还没有成功地设置它。这是我目前为止写的;
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /tags/3.2/index.php [L]
在我的VirtualHost指令中有以下内容;
AllowOverride all
Order allow,deny
Allow from all
Options Indexes FollowSymLinks
DirectoryIndex index.php
但是我得到的只是浏览器中的目录列表和apache日志中的错误信息;
[Fri Nov 25 18:44:44 2011] [error] [client 127.0.0.1] client denied by server configuration: /opt/local/apache2/htdocs/vhosts/wordpress/.htaccess
检查这个文件,这是Apache说访问被拒绝的地方:
/opt/local/apache2/htdocs/vhosts/wordpress/.htaccess
如果那是你的VirtualHost指令所在的地方,那么在那个文件中还有别的东西禁止访问。还要记住,当您更改实际Apache目录中的文件时,最好重新启动Apache以确保更改生效。有时配置可以包含适用于所有事物的一般规则,等等。浏览整个文件,确保没有任何内容与您要执行的操作相冲突。
例如,当您安装phpMyAdmin时,默认安装的。htaccess文件是一行读取Deny from all
。我花了整整10-15分钟才弄明白。