2011-01-19 5 views
1

私はlighttpdで私のアプリケーションを提供しようとしています。lighttpdでpharo seaside 3.0を提供

proxy.server = ("/pharo" => (
    ("host" => "127.0.0.1", "port" => 8080, "check-local" => "disable")) 
) 

が、海辺3.0とそれがネットワーク経由でアクセスするときhttp://localhost/pharoを言ってURLを書き換え:海辺2.8では、以下は私のlighttpd.confで働いていました。

誰でもlighttpdでpharoとseaside 3を提供できましたか?あなたのアプリの海辺の設定で

答えて

1

次の仕事をした、私はそうのように、この方法では、以下の行をコメント解除:私のアプリケーションの私の海辺のコンフィギュレーションのすべてのサーバ設定(リソースベースURL、サーバーのホスト名、サーバパス、サーバーで

WARequestHandler>>url 
    | url | 
    url := self basicUrl. 
    self serverPath isNil ifFalse: [ url parsePath: self serverPath ]. 
    self serverProtocol isNil ifFalse: [ url scheme: self serverProtocol ]. 
    "self serverHostname isNil ifFalse: [ url host: self serverHostname ]." 
    self serverPort isNil ifFalse: [ url port: self serverPort ]. 

    ^url 

をポート、サーバープロトコル)は不特定です。

海辺がいくつかのアプリケーションの親からサーバー設定を取得しようとしているようですが、私はそれを追跡できません。

編集:Lukas(コメント参照)のおかげで、 "Dispatcher:/"にあるアプリケーション構成の#serverHostnameをnil(不特定)にリセットしなければなりませんでした。

+1

はい、あなたは正しいです。私はSeaside 2.8のコードを念頭に置いていましたが、Seaside 3.0とは比較しませんでした。 Seasideコードを変更する代わりに、アプリケーション設定の '#serverHostname'を' nil'にリセットすることをお勧めします。 –

+0

ありがとうございました、今私はそれが右そこにあったと思って愚かに感じる:) –

0

、lighttpdのは、Apacheはよりも、元のホスト名が異なる転送するよう

+0

問題は私のMacのIPが静的ではなく、毎日私がブートするため、毎日サーバーのホスト名を変更する必要があることを意味します –

+0

あなたのコンピュータのホスト名を使用してください。 –

0

が見えるサーバのホスト名]フィールドにIPアドレスを置きます。 #haltWAUrl>>#takeServerParametersFromRequest:に置き、着信要求aRequestを検査します。

WAUrl>>takeServerParametersFromRequest: aRequest 
    "Retrieves scheme, hostname and basepath from the request unless already set." 

    scheme isNil 
     ifTrue: [ self scheme: aRequest url scheme ]. 
    host isNil ifTrue: [ 
     aRequest headers at: 'x-forwarded-host' ifPresent: [ :value | self parseAuthority: value ]. 
     host isNil 
      ifTrue: [ aRequest headers at: 'host' ifPresent: [ :value | self parseAuthority: value ] ] ]. 
    path isNil 
     ifTrue: [ aRequest headers at: 'base' ifPresent: [ :value | self parsePath: value ] ] 

をこの(または何か似た)が、あなたの問題をcreate a ticketしてください解決した場合は次のように方法を変更した場合、おそらく元のホスト名が含まれているX-Forwarded-Hostと呼ばれるヘッダフィールドは、そこにあります。

+0

こんにちはルーカス、私はあなたが言ったところで停止しましたが、takeServerParametersFromRequest:メソッドが呼び出されないので停止しませんでした。 –

関連する問題