Начинающим веб-разработчикам или Как начать делать сайты
Сейчас изучать HTML и PHP начинают в школах. Но что, если у условного школьника уже есть свои идеи и свои проекты, а понимания как запустить свой веб-сервер - пока ещё нет?
Я постараюсь ликвидировать этот пробел.
Итак, концепция LAMP требует Linux, Apache, MySQL, PHP - соответственно мы меняем:
Linux - на Windows (речь про Windows 7/ Windows 10 x64)
Apache - на nginx
MySQL - на MariaDB,
PHP оставляем нативный.
Рекомендую сразу же поставить Far Manager, брать здесь:
https://www.farmanager.com/download.php?l=ru
Итак, предлагаю использовать раздел D: (правильно разобьём диск при установке системы или воспользуемся Acronis) - по опыту если взять SSD 240Gb, его очень удобно делить пополам, выделяя 120 гиг на систему, остальное - под раздел D:
Итак, создаём папку web, в которой у нас будут храниться все проекты. Начнём с установки MariaDB - внимание, на Windows 7 версии позднее 10.4 не устанавливаются.
Я ставлю на Windows 10 версию 10.6.7 в папку d:\web\maria
Не забываем запомнить (а то и записать) установленный пароль рута.
Все прочие галки оставляю по умолчанию. Затем останавливаем службу MariaDB и правим my.ini
Не забываем прописать пути к папкам
После этого запускаем службу MariaDB и если она нормально запустилась - входим в консоль и проверяем переменные.
С первым компонентом разобрались.
Теперь надо установить nginx - берём его здесь:
https://nginx.org/ru/download.html
И просто распаковываем содержимое zip-архива в папку:
d:\web\nginx
Не забываем создать папку conf.d в папке d:\web\nginx\conf
Она нужна для конфигураций виртуальных хостов.
Правим файлик d:\web\nginx\conf\nginx.conf
worker_processes 1;Проверить правильность файлов конфигурации очень просто:
error_log logs/error.log;
pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
gzip on;
charset utf-8;
server {
listen 127.0.0.1:80;
server_name localhost;
access_log logs/host.access.log main;
location / {
root html;
index index.php index.html index.htm;
}
#error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
include conf.d/*.conf;
}
nginx -t
Если ругается на отсутствие виртуальных хостов, вспоминаем про сеть 127.0.0.0/8
127.0.0.1 - localhost
Ну а для нас, к примеру
127.0.0.2 - joomla
И так далее. Просто запускаем командную строку от имени администратора и...
Для удобства запуска создадим файлик nginx-start.bat
И запустим его. Теперь наш браузер уже может отображать веб-содержимое
Но нам ещё надо установить php
Сама установка довольно тривиальна: распаковать zip-файл в папку d:\web\nginx\php
Но не надо забывать, что PHP написан на C++, откомпилирован Microsoft Visual C++ и требует для установки MSVC++ 2015/2017/2019
В десятке они обычно уже стоят, для семёрки - качаем и ставим.
PHP после этого берём здесь:
https://windows.php.net/download/
Ещё один нюанс: PHP при запуске оставляет окно консоли. В принципе для отладки это даже плюс, так что правим файл php.ini как нам надо и так же создаём php-fpm-start.bat
Теперь, чтобы скрыть окно батника, воспользуемся средствами Visual Basic и создадим файлик php-fpm-start.vbs
Для файлов nginx-start.bat и php-fpm-start.vbs создаём ярлыки и сохраняем их в папку Автозагрузки (надеюсь у вас на компьютере один пользователь и вход без пароля).
Теперь при запуске системы nginx и php-fpm автоматически стартуют и их можно будет увидеть в процессах. Если это так, проверяем. Создаём файлик d:\web\nginx\html\test.php
И пытаемся открыть его в браузере:
Не забываем проверить, что расширение mysqli доступно (надеюсь, Вы не забыли указать путь к папке ext и включить расширение). Вообще по настройке php.ini много рекомендаций.
Если всё правильно, можно ставить phpMyAdmin - так же в папку myadmin распаковать архив отсюда: https://www.phpmyadmin.net/downloads/
В целом всё, можно ещё установить jre - он нужен для работы Eclipse PHP Developer
https://www.java.com/ru/download/ie_manual.jsp?locale=ru
Ну и сам Eclipse просто распаковать в папку c:\eclipse и вытащить ярлык на Рабочий стол. Брать его здесь: https://www.eclipse.org/downloads/download.php?file=%2Ftechn...
Или просто найти нужную ссылку тут:
https://www.eclipse.org/downloads/packages/release/2022-03/r
Не забудьте его русифицировать! Создайте папку d:\web\nginx\www и сделайте её Рабочей областью.
На этом всё, теперь Вы можете создавать свои проекты на PHP/html/css/js или использовать чужие. Создавайте виртуальные хосты, пишите в conf.d файлы настроек - и...
Спасибо за то, что дочитали до конца. Если что-то непонятно - задавайте вопросы. Предложения и дополнения так же будут приняты с благодарностью.
ИТ-проекты пикабушников
346 постов3.2K подписчиков
Правила сообщества
0. Запрещены посты вне тематики сообщества
1. Уважайте труд людей, пишите только конструктивную критику,
2. Не выкладывайте информацию по своему проекту чаще 2ух раз в месяц