sfGuard
Symfony アプリでトークン ログインが機能しない問題があります。Symfony アプリには、WordPress プラグインを介してアクセスします。iframe
WordPress プラグインは、WP コントロール パネルにトークン文字列を埋め込んだ必要最小限のプラグインです。
<iframe src="/app/index.php/api/authenticate/**token**" width="100%" height="100%">
これは、ライブサーバーで正常に機能します。エラーログを掘り下げた後、これを見つけました:
PDO Connection Error: SQLSTATE[28000] [1045] Access denied for user 'db_user'@'localhost' (using password: YES), referer: http://****/wp-admin/admin.php?page=custom-sms.php
PHP Fatal error: Call to a member function prepare() on a non-object in /var/www/vhosts/domain.com/sfapp/lib/vendor/symfony/lib/storage/sfPDOSessionStorage.class.php on line 162, referer: http://****/wp-admin/admin.php?page=custom-sms.php
奇妙なことに、サイトのフロントエンドでデータベースに書き込み/接続することはできます。database.yml
アプリが構成ファイルに設定されたデータベースのユーザー名とパスワードを使用しない原因は何ですか?
app.yml
ファイル:
all:
security:
#to auto-login to the SMS alert system from inside Wordpress admin
token: **token**
username: user@web.com
ところで、私は以前に Symfony を使用したことがなく、ドキュメントなしでこのサイトを継承しました。
アップデート
database.yml
ファイル:
# You can find more information about this file on the symfony website:
# http://www.symfony-project.org/reference/1_4/en/07-Databases
all:
doctrine:
class: sfDoctrineDatabase
param:
dsn: mysql:host=localhost;dbname=db_name
username: **username**
password: **password**
2 回目の更新:
追加するために、新しいサーバーでテストするために$env
変数を手動で設定しました。prod
/web/index.php
factories.yml
ファイル:
# You can find more information about this file on the symfony website:
# http://www.symfony-project.org/reference/1_4/en/05-Factories
prod:
logger:
class: sfAggregateLogger
param:
level: err
loggers:
sf_file_debug:
class: sfFileLogger
param:
level: err
file: %SF_LOG_DIR%/%SF_APP%_%SF_ENVIRONMENT%.log
staging:
logger:
class: sfAggregateLogger
param:
level: notice
loggers:
sf_file_debug:
class: sfFileLogger
param:
level: notice
file: %SF_LOG_DIR%/%SF_APP%_%SF_ENVIRONMENT%.log
test:
storage:
class: sfSessionTestStorage
param:
session_path: %SF_TEST_CACHE_DIR%/sessions
response:
class: sfWebResponse
param:
send_http_headers: false
mailer:
param:
delivery_strategy: none
all:
routing:
class: sfPatternRouting
param:
generate_shortest_url: true
extra_parameters_as_query_string: true
view_cache_manager:
class: sfViewCacheManager
param:
cache_key_use_vary_headers: true
cache_key_use_host_name: true