EDIT2: APC установлен и включен. какое было бы решение?
Я пытаюсь развернуть приложение Symfony на VPS.
Я развернул код из git ok, установил поставщиков и проверил /web/config.php, чтобы исправить все основные и рекомендуемые проблемы с требованиями Symfony. Это все зеленое.
Тем не менее, когда я пытаюсь получить доступ к [VPS_IP] /my_project/web/app.php, я получаю страница не работает. [my_ip] в настоящее время не может обработать запрос.
Я также попытался настроить виртуальный хост и попытаться получить доступ к своему приложению Symfony на [my_ip] только как URL-адрес, и я получил тот же результат.
Я включил переписывание модов Apache 2, я добавил и включил все необходимые расширения php, я установил date.timezone в php.ini, я также посмотрел в файлах dev.log и там у меня есть эта ошибка которая может быть причиной:
[2016-11-22 14:45:49] php.DEBUG: fsockopen(): unable to connect to 127.0.0.1:800 0 (Connection refused) {"type":2,"file":"/var/www/html/giftbundle/vendor/symfony /symfony/src/Symfony/Bundle/FrameworkBundle/Command/ServerCommand.php","line":59 ,"level":28928} []
Может ли кто-нибудь помочь?
config.yml
imports:
- { resource: parameters.yml }
- { resource: security.yml }
- { resource: services.yml }
- { resource: "@MyVendorBundle/Resources/config/services.yml" }
# Put parameters here that don't need to change on each machine where the app is deployed
# http://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration
parameters:
locale: en
framework:
#esi: ~
#translator: { fallbacks: ["%locale%"] }
secret: "%secret%"router:
resource: "%kernel.root_dir%/config/routing.yml"strict_requirements: ~
form: ~
csrf_protection: ~
validation: { enable_annotations: true }
serializer: { enable_annotations: true }
templating:
engines: ['twig']
#assets_version: SomeVersionScheme
default_locale: "%locale%"trusted_hosts: ~
trusted_proxies: ~
session:
# handler_id set to null will use default session handler from php.ini
handler_id: ~
save_path: "%kernel.root_dir%/../var/sessions/%kernel.environment%"fragments: ~
http_method_override: true
assets: ~
# Twig Configuration
twig:
debug: "%kernel.debug%"strict_variables: "%kernel.debug%"form_themes:
- 'bootstrap_3_layout.html.twig'
# Doctrine Configuration
doctrine:
dbal:
driver: pdo_mysql
host: "%database_host%"port: "%database_port%"dbname: "%database_name%"user: "%database_user%"password: "%database_password%"charset: UTF8
# if using pdo_sqlite as your database driver:
# 1. add the path in parameters.yml
# e.g. database_path: "%kernel.root_dir%/data/data.db3"# 2. Uncomment database_path in parameters.yml.dist
# 3. Uncomment next line:
# path: "%database_path%"
orm:
auto_generate_proxy_classes: "%kernel.debug%"naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true
# Swiftmailer Configuration
swiftmailer:
transport: "%mailer_transport%"host: "%mailer_host%"username: "%mailer_user%"password: "%mailer_password%"spool: { type: memory }
# app/config/config.yml
#knp_menu:
# use "twig: false" to disable the Twig extension and the TwigRenderer
# twig:
# template: knp_menu.html.twig
# if true, enables the helper for PHP templates
# templating: false
# the renderer to use, list is also available by default
# default_renderer: twig
assetic:
debug: '%kernel.debug%'
use_controller: '%kernel.debug%'
filters:
cssrewrite: ~
gregwar_captcha: ~
liip_imagine:
filter_sets:
cover_filter:
filters:
thumbnail:
size: [600, 400]
mode: inset
prod_thumbnail:
filters:
thumbnail:
size: [50, 50]
mode: inset
#web_profiler:
# toolbar: true
# position: bottom
# intercept_redirects: false
# excluded_ajax_paths: ^/bundles|^/_wdt
parameters.yml
# This file is auto-generated during the composer install
parameters:
database_host: [another remote DB IP]
database_port: 3306
database_name: [remote DB name]
database_user: [Remote DB user]
database_password: [remote DB PSW]
mailer_transport: sendmail
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null
secret: rodacsoft
facebook_app_id: [fb_app_ID]
facebook_app_secret: [fb_secret]
VPS /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
DocumentRoot /var/www/html/giftbundle/web
<Directory /var/www/html/giftbundle/web>
AllowOverride None
Order Allow,Deny
Allow from All
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]
</IfModule>
</Directory>
# uncomment the following lines if you install assets as symlinks
# or run into problems when compiling LESS/Sass/CoffeScript assets
# <Directory /var/www/project>
# Options FollowSymlinks
# </Directory>
ErrorLog /var/log/apache2/symfony_error.log
CustomLog /var/log/apache2/symfony_access.log combined
</VirtualHost>
РЕДАКТИРОВАТЬ: в Symfony_error.log у меня есть это. Понятия не имею, как это исправить или если это связано.
[Tue Nov 22 14:46:06.216187 2016] [:error] [pid 21788] [client 159.153.60.77:18035] PHP Fatal error: Uncaught Symfony\\Component\\DependencyInjection\\Exception\\ServiceNotFoundException: The service "validator.builder" has a dependency on a non-existent service "validator.mapping.cache.apc". in /var/www/html/giftbundle/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php:58\nStack trace:\n#0 /var/www/html/giftbundle/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php(51): Symfony\\Component\\DependencyInjection\\Compiler\\CheckExceptionOnInvalidReferenceBehaviorPass->processReferences(Array)\n#1 /var/www/html/giftbundle/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php(51): Symfony\\Component\\DependencyInjection\\Compiler\\CheckExceptionOnInvalidReferenceBehaviorPass->processReferences(Array)\n#2 /var/www/html/giftbundle/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnIn in /var/www/html/giftbundle/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php on line 58
Убедитесь, что папка кэша доступна для записи пользователю apache (www-data). Вы не можете получить доступ к [VPS_IP] /my_project/web/app.php, потому что вы уже определили web / папку как корневую папку в конфигурации apache. Вы должны определить ServerName и ServerAlias в конфигурации apache с вашим именем домена или попробовать прямой доступ к [VPS_IP] /app.php.
Также введите свой IP-адрес для app_dev и доступ к [VPS_IP] /app_dev.php для более четких ошибок.
Других решений пока нет …