当我有这个时,下面的 modrewrite 工作,这正是我想要的:“www.mysite.com/files/person/john.html”files.php?q=person
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*) /$1.php?q=$2 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) /files.php?q=$1 [L]
AddHandler application/x-httpd-php5 .html .htm .txt .php
我遇到的问题是当我有分页并且我有不止一个人要这样显示:“www.mysite.com/person/2”这变成了person.php,但是没有person.php,modrewrite应该只看看下面的这种情况:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) /files.php?q=$1 [L]
问题是当我只有这个 modrewrite 时,这个“www.mysite.com/person/2”有效:
Options +FollowSymLinks
RewriteEngine On
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^(.*)/(.*) /$1.php?q=$2 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) /files.php?q=$1 [L]
AddHandler application/x-httpd-php5 .html .htm .txt .php
但是,在我取消注释的那一刻,它就停止工作了?怎么办,有什么想法吗?