2016-11-15 5 views
1

を実行していないようです:CentOSの*** ERROR:のPhusion旅客は、私は私のCentOSのサーバーにカピストラーノを通じて私はこのエラーを受けてきたすべての時間を自分のRailsアプリケーションを配備していますが

*** ERROR: Phusion Passenger doesn't seem to be running. If you are sure that it is running, then the causes of this problem could be one of:

  1. You customized the instance registry directory using Apache's PassengerInstanceRegistryDir option, Nginx's passenger_instance_registry_dir option, or Phusion Passenger Standalone's --instance-registry-dir command line argument. If so, please set the environment variable PASSENGER_INSTANCE_REGISTRY_DIR to that directory and run this command again.
  2. The instance directory has been removed by an operating system background service. Please set a different instance registry directory using Apache's PassengerInstanceRegistryDir option, Nginx's passenger_instance_registry_dir option, or Phusion Passenger Standalone's --instance-registry-dir command line argument.

オン私のサーバーはApacheとPassengerを持っています5.0.30 まず、私はスタック上の他の回答をここで探していました: Link to one of these topics。 残念ながら、何も私を助けてくれていません。私はenvのパスと他の設定をApacheのconfから設定しようとしました。 私は自分のレールアプリを配備するために何を変えるべきですか? PATHの最初の乗客の状態へのフルパスはどこですか?それはpassenger_rootと一致しますか? 以下は私のログです:

$ passenger-config validate-install 


> What would you like to validate? Use <space> to select. If the menu 
> doesn't display correctly, press '!' 
> 
> ⬢ Passenger itself ‣ ⬢ Apache 
> 
> ------------------------------------------------------------------------- 
> 
> Checking whether there are multiple Apache installations... Only a 
> single installation detected. This is good. 
> 
> ------------------------------------------------------------------------- 
> 
> * Checking whether this Passenger install is in PATH... ✓ * Checking 
> whether there are no other Passenger installations... ✓ * Checking 
> whether Apache is installed... ✓ * Checking whether the Passenger 
> module is correctly configured in Apache... ✓ 
> 
> Everything looks good. :-) 




$ rvmsudo passenger-memory-stats 

Version: 5.0.30 
Date : 2016-11-15 13:43:44 +0100 

---------- Apache processes ---------- 
PID PPID VMSize Private Name 
-------------------------------------- 
25188 1  476.6 MB 1.5 MB /usr/sbin/httpd -DFOREGROUND 
25220 25188 270.4 MB 0.5 MB /usr/sbin/httpd -DFOREGROUND 
25246 25188 478.6 MB 0.2 MB /usr/sbin/httpd -DFOREGROUND 
25247 25188 478.6 MB 0.2 MB /usr/sbin/httpd -DFOREGROUND 
25248 25188 478.6 MB 0.2 MB /usr/sbin/httpd -DFOREGROUND 
25249 25188 478.6 MB 0.2 MB /usr/sbin/httpd -DFOREGROUND 
25250 25188 478.6 MB 0.2 MB /usr/sbin/httpd -DFOREGROUND 
### Processes: 7 
### Total private dirty RSS: 3.08 MB 


-------- Nginx processes -------- 

### Processes: 0 
### Total private dirty RSS: 0.00 MB 


----- Passenger processes ----- 
PID VMSize Private Name 
------------------------------- 
25222 421.0 MB 0.9 MB Passenger watchdog 
25225 772.6 MB 1.5 MB Passenger core 
25234 431.3 MB 1.0 MB Passenger ust-router 
### Processes: 3 
### Total private dirty RSS: 3.39 MB 

私のApacheの設定ファイル:

<VirtualHost *:80> 
    ServerName www.app.com 
    ServerAdmin admin 

    DocumentRoot "/srv/www/app_name/current/public" 

LoadModule passenger_module /home/userr/.rvm/gems/ruby-2.2.5/gems/passenger-5.0.30/buildout/apache2/mod_passenger.so 

#<IfModule mod_passenger.c> 
# PassengerRuby /usr/local/rvm/gems/ruby-2.2.5 
# PassengerRoot /usr/local/rvm/gems/ruby-2.2.5/gems/passenger-5.0.30 
# PassengerDefaultRuby /usr/local/rvm/gems/ruby-2.2.5/wrappers/ruby 
# PassengerInstanceRegistryDir /tmp 
#</IfModule> 

<IfModule mod_passenger.c> 
     PassengerRoot /home/userr/.rvm/gems/ruby-2.2.5/gems/passenger-5.0.30 
     PassengerDefaultRuby /home/userr/.rvm/gems/ruby-2.2.5/wrappers/ruby 
     PassengerInstanceRegistryDir /tmp 
</IfModule> 

    Options -Indexes -FollowSymLinks -MultiViews 

    LogLevel warn 
    ErrorLog logs/www.app.com-error.log 
    TransferLog logs/www.app.com-access.log 
    CustomLog logs/www.app.cp,.log combined 

<Directory /srv/www/app_name/current/public> 
    AddDefaultCharset UTF-8 

    <IfModule mod_authz_core.c> 
    # Apache 2.4 
    <RequireAny> 
     Require all granted 
    </RequireAny> 
    </IfModule> 
    <IfModule !mod_authz_core.c> 
    # Apache 2.2 
    Order Deny,Allow 
    Deny from All 
    Allow from All 
    </IfModule> 
</Directory> 

</VirtualHost> 

そして、私のenvパス:私は何かが間違って作っていることを確認するために

env file: 
    SHELL=/bin/bash 
    PATH=/sbin:/bin:/usr/sbin:/usr/bin 
    LOGNAME=root 
    USER=root 
    USERNAME=root 
    HOME=/root 
    SUDO_COMMAND=/bin/env PASSENGER_INSTANCE_REGISTRY_DIR=/tmp 
    SUDO_USER=userr 
    SUDO_UID=1001 
    SUDO_GID=100 
    PASSENGER_INSTANCE_REGISTRY_DIR=/tmp 

。すべてのアドバイスをありがとう。

答えて

0

最後に問題を解決しました。 私は2つのことをしました。

まず、自分のホームディレクトリに新しい一時フォルダを作成しました。次に、Apacheの設定ファイル内の私は、

PassengerInstanceRegistryDir /home/userr/instancetemp 

を追加しました私は

私はこれで十分だと思います
echo 'PASSENGER_INSTANCE_REGISTRY_DIR=/home/userr/instancetemp' >> ~/.bash_profile 

と私のenvパスにこれをプッシュしかし、私は私のカピストラーノの設定にも、このパスを追加

set :default_env, { 
    "PASSENGER_INSTANCE_REGISTRY_DIR" => "/home/t.panek/passenger_temp" 
} 
0

問題はシステムプライベート温度機能のようですが、httpdのためにそれを無効にすることができます:

mkdir /etc/systemd/system/httpd.service.d 
echo "[Service]" > /etc/systemd/system/httpd.service.d/nopt.conf 
echo "PrivateTmp=false" >> /etc/systemd/system/httpd.service.d/nopt.conf 
systemctl daemon-reload 
systemctl restart httpd 

乗客5.0は状態情報として/tmpを使用しなくなりましたので、プライベートテンポでも機能します。

関連する問題