Как смонтировать веб-сервер Apache, PHP 5 и Mysql с нуля

{title}

Мы разработаем, как установить, настроить и оптимизировать веб-сервер под Linux. Учебное пособие действительно для любого дистрибутива, изменяя соответствующие команды для установки или обновления файлов. В этом случае это будет сделано для дистрибутива CentOS.



Первый шаг - подключиться к нашему серверу, используя ssh из терминала.
Когда мы получаем доступ к серверу, мы приступаем к установке Apache.
: ~ # yum install httpd
Затем мы устанавливаем php, будьте осторожны с версией, которую мы устанавливаем, поскольку, если она очень новая, многие веб-приложения могут устареть и не работать.
: ~ # yum apt-get install libapache2-mod-php5 php5-cli php5-common php5-cgi
Мы устанавливаем Mysql
: ~ # yum установить MySQL-сервер MySQL
Для управления Mysql мы можем установить phpmyadmin
: ~ # yum install phpmyadmin
Настройка и оптимизация службы сервера
Первое, что мы сделаем, это автоматически запустим Apache с системой, но мы должны запустить его вручную
: ~ # yum chkconfig --level 235 httpd on
Перезапускаем или запускаем службу Apache вручную (Перезапуск или Пуск)
: ~ # yum /etc/init.d/httpd start
Мы также сообщим MySQL автоматически запускать и запускать сервис
: ~ # yum chkconfig --level 235 mysqld on
: ~ # yum /etc/inti.d/mysqld start
Чтобы проверить, установлен ли сервер и работает ли он, мы можем посетить ip сервера, и он должен ответить на страницу apache



Оптимизация Apache
Скрыть версию и информацию, чувствительную к публике. Вредоносные пользователи могут использовать эту информацию для атаки на ваш сервер.
: ~ # nano /etc/httpd/conf/httpd.conf
Добавьте эти директивы или измените их на следующие
ServerSignature Off
ServerTokens Prod
Отключить просмотр каталогов
Опции -индексы
Затем сохраните изменения и перезапустите Apache
: ~ # /etc/init.d/httpd restart
Настройте следующие переменные httpd.conf
: ~ # nano /etc/httpd/conf/httpd.conf
Тайм-аут определяет в секундах время, которое сервер будет ожидать, чтобы получить и передать во время связи. 60 и 300 секунд, это мешает отправке файлов с помощью форм, запросов TCP, GET и т. Д. Следовательно, он должен быть определен в зависимости от использования сервера.
MaxClients устанавливает ограничение на общее количество процессов сервера или клиентов, подключенных одновременно, которые могут запускаться одновременно, в зависимости от того, как изменяется производительность сервера.
KeepAliveTimeout устанавливает количество секунд, в течение которых сервер будет ждать после обслуживания запроса и закрытия соединения, обычно 10-15 секунд.
Оптимизация и настройка MYSQL
Для оптимизации и настройки MySQL мы будем
: ~ # nano /etc/my.cnf
Некоторые переменные для оптимизации и настройки:
Создайте журнал, в котором сохраняются запросы, для оптимизации которых требуется более 2 секунд.
log-slow-query = / var / log / mysql-slow-query.log
long_query_time = 2 (в секундах)
Отключите любого неактивного клиента за x секунд, тем самым не позволяя ему занять соединение
wait_timeout = 30
connect_timeout = 10
Вы также можете настроить размер кэша и буфер памяти, которые будут зависеть от потребностей использования сервера.
Оптимизация php
Самым важным в php является оптимизация php.ini, в этом случае она будет зависеть от потребностей ваших приложений.
: ~ # nano /etc/php.ini
max_execution_time - это определяет, сколько времени может потребоваться для запуска скрипта. Если вы используете скрипты, которые потребляют много ресурсов, может быть удобно настроить это наиболее удобным способом.
memory_limit - если ваш сценарий использует много памяти для эффективной работы, поскольку некоторые из служб общего хостинга позволяют только 16 МБ, если вы можете настроить его, лучше укажите его в 32 МБ.
post_max_size - если у вас есть сайт, где пользователи могут выгружать файлы на сервер, здесь вы можете установить максимальный размер файлов, которые они могут выгружать из метода POST, для задач импорта или выгрузки файлов и изображений.

  • 0