Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将apache设置为在同一个DocumentRoot上同时提供rails应用程序和完整的php应用程序_Php_Ruby On Rails_Apache_.htaccess - Fatal编程技术网

如何将apache设置为在同一个DocumentRoot上同时提供rails应用程序和完整的php应用程序

如何将apache设置为在同一个DocumentRoot上同时提供rails应用程序和完整的php应用程序,php,ruby-on-rails,apache,.htaccess,Php,Ruby On Rails,Apache,.htaccess,无法找出如何更好地构建问题的框架 我想做的是让Rails和php一起工作。我的php代码位于public文件夹中,我的apache使用public文件夹作为文档根目录。我有puma在运行:3000。我正在尝试使用我在a上看到的重写规则,以便在适当的时候转发到puma RewriteCond %{SCRIPT_FILENAME} !-d RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule ^(.*)$ http://0.0.0.0:3000%{RE

无法找出如何更好地构建问题的框架

我想做的是让Rails和php一起工作。我的php代码位于
public
文件夹中,我的apache使用
public
文件夹作为文档根目录。我有
puma
在运行:3000。我正在尝试使用我在a上看到的
重写
规则,以便在适当的时候转发到
puma

RewriteCond %{SCRIPT_FILENAME} !-d  
RewriteCond %{SCRIPT_FILENAME} !-f  
RewriteRule ^(.*)$ http://0.0.0.0:3000%{REQUEST_URI} [P]
然而,我有一个
index.php
位于我想要传递的根目录下。最好的办法是什么?我尝试了很多不同的方法,但都不能成功

RewriteCond %{REQUEST_URI} !^/$
根本不起作用

RewriteCond %{REQUEST_URI} !^/
正如你所想象的,它捕获了每个url


“不工作”是指我在rails服务器上找不到与[get]“/index.html”匹配的路由,因为我怀疑我理解错了这个问题。apache收到
/
后,会将其重写(?)为各种索引文件,然后依次尝试。因此,我必须防止它们触发我的重写,以便apache最终访问
index.php

RewriteCond %{SCRIPT_FILENAME} !-d  
RewriteCond %{SCRIPT_FILENAME} !-f  
RewriteCond %{REQUEST_URI} !index.html
RewriteCond %{REQUEST_URI} !index.cgi
RewriteCond %{REQUEST_URI} !index.pl
RewriteRule ^(.*)$ http://0.0.0.0:3000%{REQUEST_URI} [P]
有了这些规则,它可以在我的本地服务器上运行,希望也能在我的服务器上运行。我将更新该问题,以便更好地与材料相关