8000 Simplified the requirements article by javiereguiluz · Pull Request #8142 · symfony/symfony-docs · GitHub
[go: up one dir, main page]

Skip to content

Simplified the requirements article #8142

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 4 commits into from
Closed
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 19 additions & 46 deletions reference/requirements.rst
8000
Original file line number Diff line number Diff line change
Expand Up @@ -6,57 +6,30 @@
Requirements for Running Symfony
================================

To run Symfony, your system needs to adhere to a list of requirements. You
can easily see if your system passes all requirements by running the
``web/config.php`` in your Symfony distribution. Since the CLI often uses
a different ``php.ini`` configuration file, it's also a good idea to check
your requirements from the command line via:
Symfony 2.7 requires **PHP 5.3.9** or higher to run, in addition to other minor
requirements. To make things simple, Symfony provides a tool to quickly check if
your system meets all those requirements.

.. code-block:: terminal

$ php app/check.php

Below is the list of required and optional requirements.

Required
--------
Beware that PHP can define a different configuration for the command console and
the web server, so you need to check requirements in both environments.

* PHP needs to be a minimum version of PHP 5.3.9
* `JSON extension`_ needs to be enabled
* `ctype extension`_ needs to be enabled
* Your ``php.ini`` needs to have the ``date.timezone`` setting
Checking Requirements for the Web Server
----------------------------------------

.. caution::
Browse the ``web/config.php`` file in your browser and fix the reported issues.
When using the PHP built-in web server, this file is available at
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just spotted this one: talking about the built-in web server here IMO does not make sense. The built-in web server is started using the same configuration that is used when running the CLI check below. So that's just doing work twice. What is actually important is that you perform the check using your "real" web server setup (so most likely Nginx or Apache).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You are so right! I'm sorry about this mistake. I've removed this and reworded other parts. Thanks!

``http://127.0.0.1:8000/config.php``

Be aware that PHP 5.3.16 is not suitable to run Symfony,
because of a `major bug in the Reflection subsystem`_.
Once you've fixed all the reported issues, delete the ``web/config.php`` file
to avoid leaking internal information about your application to visitors.

Optional
--------
Checking Requirements for the Command Console
---------------------------------------------

* You need to have the PHP-XML module installed
* You need to have at least version 2.6.21 of libxml
* PHP tokenizer needs to be enabled
* mbstring functions need to be enabled
* iconv needs to be enabled
* POSIX needs to be enabled (only on \*nix)
* Intl needs to be installed with ICU 4+
* APC 3.0.17+ (or another opcode cache needs to be installed)
* ``php.ini`` recommended settings
Open your console or terminal, enter in your project directory, execute this
command and fix the reported issues:

* ``short_open_tag = Off``
* ``magic_quotes_gpc = Off``
* ``register_globals = Off``
* ``session.auto_start = Off``

Doctrine
--------

If you want to use Doctrine, you will need to have PDO installed. Additionally,
you need to have the PDO driver installed for the database server you want
to use.
.. code-block:: terminal

.. _`Requirements section of the README`: https://github.com/symfony/symfony/blob/2.7/README.md#requirements
.. _`JSON extension`: https://php.net/manual/book.json.php
.. _`ctype extension`: https://php.net/manual/book.ctype.php
.. _`major bug in the Reflection subsystem`: https://bugs.php.net/bug.php?id=62715
$ cd my-project/
$ php app/check.php
0