那麼,我想知道是否在ubuntu上運行rails和PHP兩種方式。我想在一臺服務器/域上運行我的PHP項目和Rails項目。在Linux上的Lighttpd上運行Rails和PHP
我真的沒有Linux的經驗,所以原諒我的天真。
如果有這種做法,請讓我知道:)
那麼,我想知道是否在ubuntu上運行rails和PHP兩種方式。我想在一臺服務器/域上運行我的PHP項目和Rails項目。在Linux上的Lighttpd上運行Rails和PHP
我真的沒有Linux的經驗,所以原諒我的天真。
如果有這種做法,請讓我知道:)
它們的運行真的很簡單。我一直這麼做(ROR運行Redmine,其餘的運行PHP)。
你有2個真正的ROR選項。既可以從FastCGI(我所做的)提供,也可以使用獨立服務器(如Mongrel等)和代理服務器運行它。兩者都有優勢。 FastCGI具有獨立的優點(無需運行輔助服務器)。獨立版具有配置更容易的優點。
如果您有具體問題,我可以指導,但互聯網上有指導如何做到這一點。
我lighttpd.conf:
$HTTP["host"] =~ "my.ror.site" {
server.error-handler-404="/dispatch.fcgi"
fastcgi.server = (".fcgi" => ("ror_1" => (
"min-procs"=>8,
"max-procs" => 8,
"socket" => "/tmp/myrorlock.fastcgi",
"bin-path"=> "/path/to/ror/site/public/dispatch.fcgi",
"kill-signal" => 9,
"bin-environment" => ("RAILS_ENV" => "production")
)))
}
fastcgi.server = (".php" =>
(
(
"socket" => "/tmp/php-fastcgi.socket",
"bin-path" => "/usr/bin/php-cgi -c /etc/php.ini",
"min-procs" => 1,
"disable-time" => 1,
"max-procs" => 1,
"idle-timeout" => 20,
"broken-scriptfilename" => "enable",
"bin-copy-environment"=> (
"PATH", "SHELL", "USER"
),
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "40",
"PHP_FCGI_MAX_REQUEST" => "50000"
)
)
)
)
就是這樣。請注意0選項。這很重要,否則每次重新啓動服務器時,都會發生殭屍進程...
我不使用Lighty。考慮到Apache的Passenger附加功能,Rails最適合Passenger和Apache。通過將路徑指向其他地方,我將Wordpress(PHP)與我的Rails應用程序放在同一個域中。 Here's an article to follow。 HTH。
感謝您的回覆,但我要求將它配置爲在lighty上運行,而不是在apache上運行。特別是不是Apache。 – Zen 2011-02-08 13:36:51
在conf.d
子目錄萊蒂的配置目錄的退房fastcgi.conf
(不知道它位於哪裏在Ubuntu,但快速搜索建議/etc/lighttpd
)。有PHP和Rails的註釋示例;通過將兩者結合起來,你應該能夠獲得你正在尋找的設置(儘管我建議先讓一個工作,然後再設置另一個)。
FastCGI是Lighty可以與Ruby或PHP等運行時進行通信的方法。 Lighty也可以使用SCGI,雖然我從來沒有使用過它,但我不確定它的工作效果如何(最後我聽說它仍然是實驗性的)。
您也可能會發現Lighty的文檔wiki上的Optimizing FastCGI頁面很有幫助,儘管它非常適合PHP/MySQL。
將看一看,感謝 – Zen 2011-02-10 05:28:34
現在的反應,似乎它會解決我的問題:D – Zen 2011-02-10 05:28:49