【问题标题】:Check .htaccess If file or folder exist检查 .htaccess 是否存在文件或文件夹
【发布时间】:2014-05-12 15:29:55
【问题描述】:

我正在寻找一种方法来为我的脚本设置一些设置 我希望通过 .htaccess 检查 URL 栏中输入的任何地址,如果在 (LIKE domain.com/foldername) 之后输入的文本然后检查并且文件夹存在转到文件夹 如果文本与 root 中的任何文件夹都不相似,则检查它的文件并最后转到特定文件 所以让我用 .htaccess 中的例子来解释一下:

If ( text = folder )
   goes to folder
elseif( text == file )
   goes to file.php
else
   goes to sample.php?text

更新: 我在 root 上有 ticket.php 和主题文件夹,我想要如果 url 是 domain.com/theme 然后转到名为 theme 的文件夹和/或如果 domain.com/tickets 转到 ticket.php

【问题讨论】:

  • 这是 mod_rewrite 的典型用例。请澄清一下 - 如果请求的 URL 是 /file,您是否要检查 /file.php 的存在,或者您是否希望用户提交 /file.php 作为请求 URL?
  • 感谢您的回复,我需要 htaccess 首先检查文件夹退出是否进入文件夹,如果文件夹不存在,请检查根目录中的文件,如果文件不存在,则转到 sample.php
  • 哪个愚蠢的程序员给这个问题打分?告诉我你自己该死的,或者在这里回答如果你认为你知道它:|

标签: php apache .htaccess


【解决方案1】:

这样的?

RewriteEngine On

# If ( text = folder )
RewriteRule ^folder/?$ - [L]

# if( text == file.php )
RewriteRule ^file\.php$ - [L]

# else
RewriteRule !^sample\.php /sample.php?text [L]

或者如果您的意思是任何文件或文件夹:

RewriteEngine On

# If ( text = folder )
# if( text == file.php )
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]

# else
RewriteRule !^sample\.php /sample.php?text [L]

【讨论】:

  • 谢谢,但不完全是这样,我想检查没有扩展名的文件夹和文件,我的意思是检查文本类似于没有.php的文件夹或文件
  • 它们都不起作用,我在根目录下有 ticket.php 和主题文件夹,我想要如果 url 是 domain.com/theme 然后转到主题,如果 domain.com/tickets 转到票证.php
  • 您的服务器上是否启用了 mod_rewrite?
【解决方案2】:

这是一种很常见的模式。

仅当路径不是文件夹或文件时才会触发此规则。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ sample.php?path=$1 [QSA]

【讨论】:

  • 我刚刚输入了这段代码,但我收到了“服务器错误”消息:(
  • 我想我在语法上犯了错误。我认为一个有效。我没有活生生的例子,所以我不确定。
  • 谢谢,但仍然没有用,请检查主要问题:我在 root 上有 ticket.php 和主题文件夹,我想要如果 url 是 domain.com/theme 然后转到名为主题和/或的文件夹如果 domain.com/tickets 转到 ticket.php
  • 然后为/tickets添加另一条规则。
  • tickets 是一个示例,我希望 htaccess 对 root 、contact.php 、 support.php 等中的所有文件执行此操作...
猜你喜欢
  • 1970-01-01
  • 2019-06-28
  • 1970-01-01
  • 1970-01-01
  • 2012-02-05
  • 1970-01-01
  • 2020-12-26
  • 1970-01-01
相关资源
最近更新 更多