2015-01-07 14 views
6

私はSymfony 2プロジェクトを持っています。何らかの理由でWebディレクトリの名前を変更できません。私はそれを一般に改名しようとしています。Symfony 2 Webディレクトリの名前を変更

このマニュアルでは、composer.jsonを変更し、app.phpとapp_dev.phpのリンクが正しいことを確認します。

しかし、私はアプリ/コンソールサーバーを実行すると:実行するには、それは、私がcomposer.jsonを変更した

The given document root directory "C:/xampp/htdocs/xxx/app/../web" does nto exists. 

示して実行作曲インストールし、作曲更新まだ運。ここに私の作曲家.jsonがあります。私はすでに "symfony-web-dir":ファイルに "public"を追加しています。

私のパブリックフォルダの名前をwebに変更しても問題ありませんが、何らかの理由でそれを行うことはできません。

{ 
"name": "symfony/framework-standard-edition", 
"license": "MIT", 
"type": "project", 
"description": "The \"Symfony Standard Edition\" distribution", 
"autoload": { 
    "psr-0": { "": "src/" } 
}, 
"require": { 
    "php": ">=5.3.3", 
    "symfony/symfony": "~2.4", 
    "doctrine/orm": "~2.2,>=2.2.3", 
    "doctrine/doctrine-bundle": "~1.2", 
    "twig/extensions": "~1.0", 
    "symfony/assetic-bundle": "~2.3", 
    "symfony/swiftmailer-bundle": "~2.3", 
    "symfony/monolog-bundle": "~2.4", 
    "sensio/distribution-bundle": "~2.3", 
    "sensio/framework-extra-bundle": "~3.0", 
    "sensio/generator-bundle": "~2.3", 
    "incenteev/composer-parameter-handler": "~2.0", 
    "richsage/rms-push-notifications-bundle": "dev-master", 
    "friendsofsymfony/user-bundle": "~1.3", 
    "ircmaxell/password-compat": "~1.0.3" 
}, 
"scripts": { 
    "post-install-cmd": [ 
     "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters", 
     "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap", 
     "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache", 
     "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets", 
     "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile" 
    ], 
    "post-update-cmd": [ 
     "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters", 
     "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap", 
     "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache", 
     "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets", 
     "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile" 
    ] 
}, 
"config": { 
    "bin-dir": "bin" 
}, 
"extra": { 
    "symfony-app-dir": "app", 
    "symfony-web-dir": "public", 
    "incenteev-parameters": { 
     "file": "app/config/parameters.yml" 
    }, 
    "branch-alias": { 
     "dev-master": "2.4-dev" 
    } 
} 

}

+0

あなたはキャッシュをクリアしましたか(ドキュメントの説明どおり)? –

+0

@TomaszMadeyskiええ、何らかの理由で私はこれをテストするために別のプロジェクトを作成しましたが、うまくいきました。私が取り組んでいる現在のものではなぜうまくいかないのか分かりません。 – user2478240

+0

このエラーの原因は何ですか?コールスタックはありますか? –

答えて

14

あなたは確かに「ウェブ」ディレクトリの名前を変更することができますが、server:runコマンドはこれを期待していません。 ServerRunCommandソースコード(on line 77)にあるように、 'web'ディレクトリはそこにハードコードされています。

ただし、次のコマンドを実行しているときだけで--docrootオプションを提供することにより、この問題を解決することができるはずです。

bin/console server:run --docroot=C:/xampp/htdocs/xxx/public 

(あなたが使用している場合app/consoleとすることができる、コンソールの場所でbin/consoleを置き換えますSymfony 2構造)

+0

ありがとうございます!これは私が探しているものです – user2478240

+0

エンタープライズフレームワークでは厄介なようです:) – userlond

+0

これはubuntuとsymfonyのフォーム3: 'php bin/console server:start --docroot =/opt/lampp/htdocs/MyApp/public_html' – Emaus

関連する問題