调试 Passenger_base_uri 问题

发布于 2024-11-08 17:19:10 字数 950 浏览 2 评论 0 原文

一开始我做了一个简单的设置,因为只能通过 Web 服务调用来访问该应用程序。

nginx.conf 看起来像这样:

location /pippa/ {
            root /var/www/apps/pippa/public;
            passenger_enabled on;
            rack_env production;
}

一切工作正常,但现在我还必须访问项目资产中的一些图像,因此我需要设置“passenger_base_uri "http://www.modrails.com/documentation/Users%20guide%20Nginx.html#deploying_rails_to_sub_uri" rel="nofollow">将 Rails 部署到 sub URI”。

在我的 nginx.conf 中,我执行了以下操作:

...
location /pippa/ {
            root /var/www/apps/pippa;
            passenger_base_uri /pippa;
            passenger_enabled on;
            rack_env production;
}
...

在我的 Rails 应用程序中,我执行了以下操作:

ln -s /var/www/apps/pippa/public /var/www/apps/pippa/pippa

应用程序公共文件夹下的所有资产现在都可以访问,但应用程序本身却不能访问。

如果我对正在运行的应用程序进行正常的 Web 服务调用,现在我会从 Nginx 收到 404。

我正在使用 Passenger 3 和 nginx 1.0。

At the beginning I did a simple setup, because the app had to be accessed only for webservice calls.

nginx.conf looked like this:

location /pippa/ {
            root /var/www/apps/pippa/public;
            passenger_enabled on;
            rack_env production;
}

Everything was working fine, but now I have to access also some images in the assets of the project, so I need to set up the passenger_base_uri described in "Deploying Rails to sub URI".

In my nginx.conf I did the following:

...
location /pippa/ {
            root /var/www/apps/pippa;
            passenger_base_uri /pippa;
            passenger_enabled on;
            rack_env production;
}
...

Inside my rails app I did:

ln -s /var/www/apps/pippa/public /var/www/apps/pippa/pippa

All the assets under the public folder of the app are now reachable, but the app itself is not.

If I do a normal webservice call to the app that was working, now I get a 404 from Nginx.

I'm using Passenger 3 and nginx 1.0.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

紫南 2024-11-15 17:19:10

我认为您应该执行以下操作:

cd /var/www/apps/pippa/public; ln -s /var/www/apps/pippa/app/assets/images .

将conf文件更改为:

location /pippa/ {
        root /var/www/apps/pippa/public;
        passenger_enabled on;
        rack_env production;
        passenger_base_uri /images
 }

删除您创建的其他软链接,重新启动nginx服务器并重新启动nginx。您应该能够通过 http://yoursite.com/images 访问图像

I think you should do the following :

cd /var/www/apps/pippa/public; ln -s /var/www/apps/pippa/app/assets/images .

Change the conf file as :

location /pippa/ {
        root /var/www/apps/pippa/public;
        passenger_enabled on;
        rack_env production;
        passenger_base_uri /images
 }

Remove the other softlink that you created, restart the nginx server & you should be able to access the images as http://yoursite.com/images

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文