【问题标题】:Getting rid of index.php in the URL when using recess framework and lighttpd使用凹槽框架和 lighttpd 时摆脱 URL 中的 index.php
【发布时间】:2010-04-16 06:25:23
【问题描述】:

我正在使用带有 lighttpd 的凹槽 php 框架

有谁知道我如何使用较短的网址:

http://www.myserver.com/recess

代替:

http://www.myserver.com/index.php/recess

课间自述文件说,如果我有 mod_rewrite,我可以使用较短的 url:

-- "你有 mod_rewrite 吗?

-- 是:打开浏览器到解压的位置

-- 否:打开浏览器到解压后的位置,后面跟着 index.php"

我确实在 lighttpd 上启用了 mod_rewrite,并且我已经删除了 index.php,但我得到了 404。

我的 lighttpd.conf 中是否需要任何特殊规则?

【问题讨论】:

    标签: php mod-rewrite frameworks lighttpd recess


    【解决方案1】:

    检查 CakePHP 文档中的 relevant page 是否可以帮助您。有一节介绍如何设置 lighttpd 和美化 URL。

    【讨论】:

      【解决方案2】:

      要从 url 中隐藏 index.php,您可能需要一些重写规则,如下所示:

      RewriteEngine on
      RewriteCond $1 !^(index\.php|images|robots\.txt)
      RewriteRule ^(.*)$ /index.php/$1 [L]
      

      【讨论】:

      • 我怀疑 apache 的 mod-rewrite 规则是否适用于这个网络服务器
      • @Col。弹片:当然是真的,但是投反对票有什么意义呢?
      • 再投反对票!!任何解释将不胜感激。
      • 我认为 Sarfraz 是正确的,我需要重写规则,只是转换为 lighttpd 语法并放入 lighttpd.conf 而不是 .htaccess(因为 lighttpd 不使用 apache .htaccess。
      • 请问有人可以使用 lighttpd url.rewrite-once 语法发布转换后的重写规则吗?
      【解决方案3】:

      感谢大家的 cmets,我得到了基于 cakephp 文档的重写规则(是的,它们与 apache 完全不同)。但仍然在休会框架中出现错误。由于它直接支持并在 lighttpd 上进行测试,所以切换到 cakephp。

      【讨论】:

        【解决方案4】:

        其实apache的mod-rewrote跟index.php没有关系
        这是另一个 apache 指令 - DirectoryIndex 责任。 但是,由于您使用的是另一个网络服务器,而不是流行的服务器,因此您必须查阅您的网络服务器文档。
        我认为你必须先打开 PHP 支持

        【讨论】:

        • 是的,我正在使用 lighttpd(在 Q 标题和问题中)。
        猜你喜欢
        • 2014-07-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-11-05
        • 1970-01-01
        • 2013-02-10
        相关资源
        最近更新 更多