如何在网站root下保留htaccess文件

时间:2017-06-22 05:03:39

标签: php apache .htaccess mod-rewrite

localhost,xampp,win 7
网站路径:
C:\xampp\htdocs\news\s02

因此所有相关文件(包括.htaccess)都在s02文件夹下。

这样的链接工作正常:
http://localhost/news/s02/view.php?art=160915142500&title=blue-sky

我想要以下计算网址 http://localhost/articles/160915142500/blue-sky

.htaccess

RewriteEngine on
RewriteBase /
RewriteRule ^articles/([0-9]+)/([a-zA-Z-_]*)$ view.php?art=$1&title=$2 [NC,L]

结果 - 错误404

的httpd.conf
LoadModule rewrite_module modules/mod_rewrite.so - 取消评论 AllowOverride All - 所有实例

当我将.htaccess文件移至:
C:\xampp\htdocs
并将RewriteRule更改为:
RewriteRule ^articles/([0-9]+)/([a-zA-Z-_]*)$ news/s02/view.php?art=$1&title=$2 [NC,L]

没有error 404,即view.php已加载,但没有图片,css和js文件(它们都在以前,即s02文件夹中。

如何将.htaccess文件保存在网站根目录(s02)下并加载view.php及其所有元素?

重新启动xampp和apache以及mysql模块没有帮助。

1 个答案:

答案 0 :(得分:0)

我认为这不可能从子目录中做到。您基本上是尝试从子目录中重写发送到根目录的请求。为了重写当前url,apache应该在当前目录中看到.htaccess文件。

但是,您仍然可以重定向到指定位置,但必须在htdocs目录中创建.htaccess文件。

这是我的第一个答案:)不确定这是否适合作为答案。