私の Ruby on Rails プロジェクトは justhost サーバーにあります。そこにルビープロジェクトを作成しているとき、これはデフォルトでフォルダー rails_apps に作成されています。
私のプロジェクトでは、シンボリックリンクを作成しました。
ln -s ~/rails_apps/webworth/public ~/public_html/webworth
および
ln -s ~/rails_apps/webworth ~/public_html/webworth_app [ftp クライアントでファイルを閲覧するためだけのこのシンボリック リンクの目的]
~/rails_apps/webworth/public ディレクトリに .htaccess ファイルを作成しました。以下は.htaccessコードです
Options -MultiViews
PassengerResolveSymlinksInDocumentRoot on
RailsEnv development
RailsBaseURI /webworth
SetEnv GEM_HOME /home5/worthgur/ruby/gems
~/public_html 内の 1 つの .htaccess ファイル。以下はコードです:
# Use PHP5 Single php.ini as default
AddHandler application/x-httpd-php5s .php
RewriteEngine on
Options +SymLinksIfOwnerMatch
RewriteBase /
RewriteCond %{HTTP_HOST} ^(www\.)?webworth.com [NC]
RewriteCond %{REQUEST_URI} !webworth/ [NC]
RewriteRule ^(.*)$ "webworth\/$1" [L]
これらの .htaccess ファイルの構造では、1 つの問題を除いてすべてが正常に機能しています。プロジェクト内のすべての URL に余分なテキストが追加されています。つまり、routes.rb ファイルによって生成されたすべてのリンクの「webworth」です。そして、この余分なテキスト「webworth」をすべての URL から削除したいと考えています。
Now urls are generating for example in this manner.
http://webworth.com/webworth/tags/smartphones
while it should be http://webworth.com/tags/smartphones.
この余分なテキスト、つまり「webworth」は、サイトのドキュメント ルートにないため、アクセスする必要があるフォルダーに対して以前に追加されました。この余分なテキストのために、routes.rb ファイルによって生成されたすべての URL に余分なテキストが追加されます。 ~/rails_apps/webworth/public/.htaccess ファイル [理由: RailsBaseURI /webworth]
~/rails_apps/webworth/public/.htaccess ファイルで RailsBaseURI /webworthをRailsBaseURI /に変更することで、これを修正できると思います。
~/public_html/.htaccess ファイルに適切なコマンドを記述できなかったため、トラフィックを public_html からサイトのシンボリック リンク (webworth) にリダイレクトできませんでした。多くのオプションを使用しましたが、それがどのように機能するかわかりませんでした。~/public_html/.htaccess ファイルを適切に記述して、トラフィックを public_html フォルダーから私のシンボリックリンク (webworth) にリダイレクトするのを手伝ってください。
Justhost は次のリンクを提案しました: How to host the Primary Domain from a subfolder。しかし、それでも問題を理解できませんでした。ありがとう