gpt4 book ai didi

ruby-on-rails - 告诉 Rails 忽略特定的 URL 并让 Apache 处理

转载 作者:行者123 更新时间:2023-12-04 07:33:56 26 4
gpt4 key购买 nike

我有一个通过 Passenger 在我的 Apache 服务器上运行的 Rails 应用。

偶尔我会为网站使用一些PHP脚本,并将它们放在公共(public)目录中。

当我转到/php/时,我希望 Apache 使用 PHP 解析器处理请求并让 Rails 忽略它。

目前我可以访问/php/index.php,它工作正常。但是我也需要/php/才能工作,但 Rails 一直在寻找 Controller 来处理它。

我感觉这与 apache 重写规则有关,但我想不通。

我用过

RewriteEngine On 
RewriteRule ^php - [L]
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

在/php/.htaccess 文件中,但这不起作用。我仍然收到 Rails 未找到页面的错误。

最佳答案

我认为您可以在您的 Passenger 应用程序的主 Apache 配置文件中执行此操作 - 类似于此

<Directory "/.../myapp/php">
PassengerEnabled off
AllowOverride all
</Directory>

在您的 VirtualHost block 中应该可以解决问题(至少关闭 Rails - 打开 PHP 由您决定!)。

我的回答基于 ModRails Apache documentation - 有关 PassengerEnabled 命令的更多信息,请参阅第 5.6 节。

关于ruby-on-rails - 告诉 Rails 忽略特定的 URL 并让 Apache 处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4918020/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com