2016-01-15 107 views
1

我不知道這是可能的,但有一種方法來承載鬼博客在一個子文件夾,而不是一個子https://www.allaboutghost.com/how-to-install-ghost-in-a-subdirectory/設置在/博客鬼博客上流星

我已經設置了一切對結束它說的方式,現在唯一需要的是從FlowRouter.notFound函數中排除/blog。有沒有辦法做到這一點,或設置路線來聆聽nginx?

//編輯

這裏的nginx的配置

server { 
    listen 80; 
    server_name localhost; 

    location ^~ /blog { 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_set_header Host $http_host; 
    proxy_set_header X-NginX-Proxy true; 

    proxy_pass http://127.0.0.1:2368; 
    proxy_redirect off; 
    } 

} 

這裏的鬼魂配置

config = { 
    // ### Production 
    // When running Ghost in the wild, use the production environment. 
    // Configure your URL and mail settings here 
    production: { 
     url: 'https://www.raiseyourflag.com/blog', 
     //everything else 
    } 
} 

回答

1

這裏有兩個不同的問題。

  1. 設置Ghost通過Nginx提供子目錄。 The tutorial you linked to完全覆蓋。
  2. 將博客與基於Meteor的第二個站點相集成。

,如果你已經完成了第一步還是不行,所以讓我們確定這是照顧第一的目前還不清楚:

#確保您的config.js的幽靈包括在該url鍵/博客發展節:「http://127.0.0.1:2368/blog」 #在開發環境開始鬼:index.js #檢查NODE_ENV =開發節點的東西實際上是在端口2368上運行:sudo netstat -plnt | grep ':2368' #去這裏在瀏覽器中,你會看到你的鬼博客,並能夠瀏覽它:http://127.0.0.1:2368/blog

如果你已經得到這麼多,你的Ghost博客正在工作,並且你已經準備好通過端口80上的Nginx來訪問它。爲了簡化這一步的問題,暫時將任何Meteor代碼移開,這樣可以被驗證。

你的Nginx配置看起來不錯。只是reload Nginx的一次爲 良好的措施,然後在你的瀏覽器現在檢查這個網址:

現在你應該再次看到你的鬼的博客,但現在通過Nginx的訪問和代理到另一個港口。

確認步驟正常後,再添加Meteor前端代碼。從任何前端代碼的角度來看,/blog就像Web服務器處理的任何URL一樣。

如果您轉到/blog並查看Meteor提供的NotFound頁面,這意味着客戶端Meteor框架必須已從/ somewhere /加載,推測可能是/index.html。在這種情況下,Nginx配置存在問題。也許還有更多的你發佈了嗎?

+0

我已經完成了第一部分。我的問題是,當我進入'/ blog'時,FlowRouter接管並認爲它是NotFound組的一部分,並呈現未找到的頁面。如果nginx應該工作,無論FlowRouter,我可以在這裏發佈nginx配置 – sdybskiy

+0

更新問題 – sdybskiy

+0

更新的問題,不幸的是我沒有看到我的博客在該URL :(我無法設置前綴路徑,因爲我的應用程序需要住在根 – sdybskiy