Мои попытки подружить nginx и phpmyadmin не как не могут увеньчатся успехом, уже сижу часов 10 бьюсь и не могу добиться результата чего только не делал, не фига не работает, кто это делал кто может помочь, только реально прошу помощи, у меня вообще phpmyadmin отказывается открываться прямо жесть какая то...
На русском пиши, пожалуйста. Очень сложно читать постоянные грамматические ошибки. Школу вроде бы должен был уже окончить. По теме: показывай как делаешь и какой результат получаешь.
В общем. смотрим сделал вот такой файл под конфигурацию nginx для своего же статического айпишника. Код (Text): server{ #имя сервера: server_name localhost; #логи access_log /var/log/nginx/localhost.access.log; error_log /var/log/nginx/localhost.error.log; # корневая директория root /var/www/html; location ~ \.php$ { try_files $uri = 404; include fastcgi_params; fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } # порядок индексов location / { index index.php index.html index.htm; } #кастомная страница 404 location /errors { alias /var/www/html/error ; } error_page 404 /errors/404.html; } Так php у меня заработало. Всё круто создал директорию в html - phpmyadmin На неё поставил вот такую вещь. Что делает ссылку на файл с phpmyadmin Код (Text): sudo ln -s /usr/share/phpmyadmin /usr/share/nginx/html Что в результате я вижу теперь вот такую вещь переходя по своему адресу можете кстати посмотреть http://212.16.195.4/phpmyadmin --- Добавлено --- По логам вот что видно 2016/07/15 17:42:47 [error] 28879#28879: *192 FastCGI sent in stderr: "PHP message: PHP Fatal error: require_once(): Failed opening required '/usr/share/php/php-gettext/gettext.inc' (include_path='.:/usr/share/php') in /usr/share/phpmyadmin/libraries/select_lang.lib.php on line 477" while reading response header from upstream, client: 95.154.83.146, server: localhost, request: "GET /phpmyadmin/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.0-fpm.sock:", host: "212.16.195.4" --- Добавлено --- честно не понимаю что не так сделал при установке...
@denis01 php мб я не установил что нибудь, что-то нужно для работы может чего не хватает, я ставил php-fpm
Чуть чуть конфиг не дописал Код (Text): server{ # порядок индексов location / { index index.php index.html index.htm; try_files $uri $uri/ /index.php?$args; } } Попробуй, если будет что не так кидай логи
@askanim в php.ini можно настроить error_log чтобы писался в файл и указать название файла, он появиться в той же папке, где лежит срипт который был запущен и в нём были ошибки.
вот какая ошибка сейчас 2016/07/15 18:19:13 [error] 29199#29199: *258 FastCGI sent in stderr: "PHP message: PHP Fatal error: require_once(): Failed opening required '/usr/share/php/php-gettext/gettext.inc' (include_path='.:/usr/share/php') in /usr/share/phpmyadmin/libraries/select_lang.lib.php on line 477" while reading response header from upstream, client: 95.154.83.146, server: localhost, request: "GET /phpmyadmin/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.0-fpm.sock:", host: "212.16.195.4"
Советую Nginx сделать frontend к Apach, сделать конфиг с настройками виртуальных хостов Пример конфига Код (Text): user nginx; worker_processes 1; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/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 /var/log/nginx/access.log main; sendfile on; #tcp_nopush on; keepalive_timeout 65; client_max_body_size 100m; gzip on; gzip_min_length 500; gzip_proxied any; gzip_types text/xml application/xml application/x javascript text/javas$ gzip_disable "msie6"; gzip_comp_level 4; include /etc/nginx/conf.d/*.conf; /include /etc/nginx/sites-enabled/*.conf; // Эта строчка подключает все файлы в директории /etc/nginx/sites-enabled } Дальше создаешь 2 директории 1) sites-enabled 2) sites-available Для создания домена создаешь файл в директории sites-available "мой_сайт.ру.conf" Код (Text): server { listen 80; access_log /путь к логу/nginx-access.log; # Лучше туда же где сайт error_log /путь к логу/nginx-error.log; server_name мой_сайт.ру *.мой_сайт.ру; root /корневая сайта/$subdomain; set $subdomain ""; if ($host ~* ^([a-z0-9-\.]+)\.мой_сайт.ру$) { set $subdomain $1; } if ($host ~* ^www.мой_сайт.ру$) { set $subdomain ""; } if ($host ~* ^мой_сайт.ру$) { rewrite ^ http://www.мой_сайт.ру$request_uri? permanent; } location / { index index.php index.aspx index.html index.htm; try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/tmp/php-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } } Оставишь только блок location ~ \.php$ как у тебя там настроено Таким образом для создания субдомена надо будет просто создать директорию в корне сайта например "субдомен" чтобы заработал субдомен.мой_сайт.ру Еще одно, при наборе адреса мой_сайт.ру будет редирект на www.мой_сайт.ру что хорошо для поиска, меньше дублей И не забывай делать линк на конфиг ln -s /etc/nginx/sites-available/мой_сайт.ру.conf /etc/nginx/sites-enabled/мой_сайт.ру.conf Рестартуешь nginx и радуешься автоматизированным решением
"fastcgi://unix:/var/run/php/php7.0-fpm.sock:" строка говорит о том что нет доступа к папке /var/run/php. Внимательно проверь ее существование, затем того пользователя от которого стартует nginx и php-fpm. Что nginx что php-fpm должны работать от одного пользователя. Если опять не получится кидай конфиги nginx и php-fpm. Вечером зайду гляну
В Nginx немного мудрено все ))) Поэтому использование чистого Nginx это извращение. В нем нет PHP совсем а php-fpm настроить первый раз не сразу человек понимает. Хотя там да настройки берутся из php.ini тоже, некоторые.
@Sanchis первый фейл твоего высера это сама трактовка ошибки. Тебе говорят мол не могу найтить требуемый геттекстинк в такой-то директории вызванный а таком-то месте такого-то файла. Сия хренота случилась при общении с таким-то апстримом. Твоя версия: не могу прочитать апстрим. Отлично ваще да? второй фейл твоего высера это про обязательность работы nginx и fpm от одного пользователя. Для зачем? Сокет фпм должен быть с такими уидами-гуидами чтоб нгинкс мог в него писать-читать. А работать пхп машина должна от своего юзера. Для изоляции. В общем всё про тебя понятно. Лучше реально молчи чем вот так на людях демонстрировать свои нулевые знания.
Это ты мне говоришь? Тому кто не одну машину с nginx администрирует? ))) Ну даешь, сам то сталкивался когда нибудь с конфигурированием таких серверов?
Блин читай лог, /usr/share/php/php-gettext/gettext.inc говорит что не может получить доступ к /usr/share/php
а как надо пользоваться? а ты хотел мод-пхп для нгинкса? ахаха,что ты делаешь, прекрати... да, тебе. Уволить тебя за такие знания. Представляю что ты там наадминил. не, впервые слышу. Ну это если ты в термин "таких" вкладываешь такие же рукожопые решения какие ты админишь. А так у меня свой хостинг. Ой.
Так ладно давайте продолжим срач позже, смотрите наковырялся сделал вот такое вот дело.... добавил в конфиг своего сайта такие вот дела .... Код (Text): location /phpmyadmin/ { alias /usr/share/phpmyadmin/; location ~ \.php$ { fastcgi_pass unix:/var/run/php-pool-name.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $request_filename; fastcgi_ignore_client_abort off; fastcgi_param PHP_ADMIN_VALUE "open_basedir=/usr/share/phpmyadmin:/usr/share/php/php-gettext"; } location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ { access_log off; log_not_found off; expires 1M; } } Так понимаю нужно было дать разрешение какое то php я дал, но блин теперь ошибка 403 (простите 403 Forbidden )
покажи мне ГДЕ КОНКРЕТНО ГОВОРИТСЯ ОБ КАТАЛОГЕ я вижу фатальную ошибку при попытке подключения файла геттекст-инк. Дело в том что инклюд допускает отсутствие файла и выбрасывает ворнинг, а реквайр не допускает и ложит машину фаталом. Что мы и наблюдаем. Не надо тут ничего придумывать.
Я с вас поражаюсь, вместо того чтобы людям помочь вы бардак устраиваете. Что за люди то такие? --- Добавлено --- Прям тут Failed opening required '/usr/share/php/php-gettext/gettext.inc' (include_path='.:/usr/share/php') in /usr/share/phpmyadmin/libraries/select_lang.lib.php on line 477"
@Sanchis поражайся дальше. В отличие от тебя мы можем помочь. А ты не можешь, потому что у тебя на очевидную формулировку пхп-машины нашлась собственная трактовка. И ты еще будешь рассказывать что админишь веб-сервера. Печаль за тех кто тебе доверил сию ответственную миссию.