0

我有几个域的以下文件结构:

/index.php [optional. for some domains no index.php file]
/content.php [always present]

example.com如果用户请求类似or的 URL example.com/,我想检查index.php服务器上是否存在并将他发送到index.php. 但如果index.php服务器上不存在我应该将他发送到content.php. 此外,如果请求的 URL 类似于example.com/testor example.com/test/test2,请将他发送到content.php.

我在 中写过类似的东西.htaccess,但它不检查是否index.php存在。

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([^.]+)/([^.]+)?$ content.php?category=$1&slug=$2 [L]
RewriteRule ^([^.]+)?$ content.php?category=$1 [L]
#RewriteRule ^*$ content.php [L]

我应该如何修改上面的代码来检查是否存在index.php?还有任何优化该代码的建议吗?

4

1 回答 1

0

您不能将 content.php 添加到DirectoryIndex指令吗?例如

<IfModule mod_dir.c>
DirectoryIndex index.php content.php
</IfModule>

我认为不可能检查文件是否存在于重写规则中。

于 2013-01-07T19:43:31.220 回答