[英]PHP and Rails for NginX configuration
我有PHP和Rails在同一台服務器上運行。 我以前在nginx.conf上有一個重寫規則
location / {
index index.php;
}
並提供了/foo/bar
/foo/bar/index.php
類的URL。
但是現在我也有Rails(Passenger),有了這個規則,我就無法擊中Rails。 我如何檢查之前是否存在index.php,並且僅在不存在的情況下才能正常使用。
謝謝。
如果我理解了您的問題,則需要定義另一個位置塊,該位置塊會“命中”軌道並在當前位置使用try_files。 這樣的事情。
index index.html index.php # better place this outside location block
upstream thin {
unix:/tmp/thin.0.socket; # this could be any other rails server socket
unix:/tmp/thin.1.socket;
}
location / {
try_files $uri @rails;
}
location @rails {
proxy_pass http://thin;
}
這些對於此類配置將是必不可少的部分,當然,它缺少代理配置。 類似應用的更詳細的示例
應該try_files
server {
try_files $uri $uri/ $uri/index.php @passenger;
location @passenger {
passenger_enabled on;
rails_env development;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.