1

我有一个 .htaccess 问题,它正在慢慢破坏我的理智。在我的项目中,我有一个包含 404.php 的根文件夹,以及一个名为signup的显式子目录。该子目录包含一个名为index.php的文件,该文件执行处理。该项目在 Windows 7 下使用 XAMPP。

根 .htaccess 文件包含以下内容:

Options +FollowSymlinks

RewriteEngine On

ErrorDocument 404 /404.php

注册物理子目录中的 .htaccess包含:

RewriteEngine On
RewriteOptions inherit

Options +FollowSymlinks
RewriteCond %{REQUEST_URI} ^/signup/page1$ [NC]
RewriteRule (.*) signup/index.php?page=1 [NC,L]

下面的重写日志似乎在重写模块甚至可以检查它之前决定/signup/page1不存在。有没有人对可能导致此问题的原因有任何想法?

10.1.1.201 - - [03/Dec/2012:15:06:58 +1100] [testsite.com/sid#463bd0][rid#4412b10/initial] (1) [perdir C:/workspace/project/public/signup/] pass through C:/workspace/project/public/signup/page1
10.1.1.201 - - [03/Dec/2012:15:06:58 +1100] [testsite.com/sid#463bd0][rid#4500fc0/initial/redir#1] (3) [perdir C:/workspace/project/public/] strip per-dir prefix: C:/workspace/project/public/404.php -> 404.php
10.1.1.201 - - [03/Dec/2012:15:06:58 +1100] [testsite.com/sid#463bd0][rid#4500fc0/initial/redir#1] (3) [perdir C:/workspace/project/public/] applying pattern '(.*)' to uri '404.php'
4

2 回答 2

1

你必须在你的目录里面RewriteBase这样使用:.htaccesssignup

RewriteEngine On
RewriteOptions inherit
Options +FollowSymlinks

RewriteBase /signup

RewriteRule ^page1$ /signup/index.php?page=1 [NC,L,QSA]
于 2012-12-03T08:24:11.097 回答
0

试试这个:

RewriteEngine On
RewriteRule ^signup/page1/?$  http://mydomain.com/signup/index.php?page=1 [L]
于 2012-12-03T04:46:23.437 回答