Skip to main content

Выкарыстанне phpmyadmin ў звязку з nginx



Пасля налады звязка nginx + php-fpm вам можа спатрэбіцца phpmyadmin для кіравання базамі дадзеных MySQL. Найбольш распаўсюджаная практыка - доступ праз аліяс. Ледзь радзей - поддомен. Разгледзім першы варыянт.



У першую чаргу варта ўсталяваць сам phpmyadmin немудрагелістай камандай:

  # Aptitude install phpmyadmin 

Падчас ўстаноўкі будзе зададзена два пытанні. Першы - выканаць Ці аўтаматычную наладу для вэб-сервераў apache і lighttpd. Другі - ці варта наладжваць канфігурацыю phpmyadmin пасродкам db-config.

Першае пытанне прапускаем. Пры жаданні, другое пытанне вы можаце вывучыць і выканаць адпаведную настрокі. Праўда, phpmyadmin будзе нармальна працаваць і без гэтага.



Далей адкрываем канфігурацыйны файл nginx і прыпісваем да патрэбнага сайту наступны location:

 location / pma / {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;  } Location ~ * \. (Js | css | png | jpg | jpeg | gif | ico) $ {access_log off;  log_not_found off;  expires 1M;  }} 

Локейшену варта прысвоіць якое-небудзь унікальнае імя, каб туды не стукаліся боты.

Таксама ў якасці значэння параметру fastcgi_pass прапісваем адрас пула php (tcp або socket, у залежнасці ад налады вашага сервера).



Напрыканцы дадаем выключэння open_basedir для каталогаў / usr / share / phpmyadmin і / usr / share / php / php-gettext. Тут магчымыя два варыянты. Першы з іх (пераважны) - гэта параметр ў канфігурацыйным файле пула:

  php_admin_value [open_basedir] = "/ usr / share / phpmyadmin: / usr / share / php / php-gettext" 

Другі варыянт - ў вышэйапісаным location дадаць радок:

  fastcgi_param PHP_ADMIN_VALUE "open_basedir = / usr / share / phpmyadmin: / usr / share / php / php-gettext"; 

Пасля рэдагавання канфігурацыйных файлаў варта перазапусціць nginx і php-fpm.



Як вы ацэніце артыкул?
Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (9 адзнак, сярэдняе: 3,56 з 5)
Загрузка ...

” 6 Каментары "Выкарыстанне phpmyadmin ў звязку з nginx"

  1. адміністратар сайта, добры дзень, як вы маглі ўжо заўважыць у мяне кожная першая літара слова чаму то пішацца аўтаматычна загалоўнай. наткнуўся на ваш сайт толькі сёння, знайшоў вельмі шмат добра апісаных артыкулаў. Але канкрэтна па гэтым артыкуле зрабіць phpmyadmin не змог, тут адсутнічае ўказанне аб тым што трэба дадаць сімвалічную спасылку на дырэкторыю / usr / share / phpmyadmin. без яе phpmyadmin не працаваў. мне здаецца што гэты артыкул не поўная, у адрозненні ад астатніх, напісаных вамі. таму ацаніў толькі на 3. але ў цэлым артыкулы на сайце вельмі карысныя, асабліва для пачаткоўцаў, як я, усё вельмі добра напісана і падрабязна растлумачана. дадаў у абранае ваш сайт, знайшоў шмат карыснай інфармацыі, якой недастасоўны скарыстаюся для развіцця свайго праекту! выказваю вялікую падзяку!

    1. Да Дзякуй. Паправіў css.
      А вось наконт спасылкі сумняваюся. Куды ёй спасылацца, калі аліяс у конфіге nginx вядзе прама ў тэчку phpmyadmin? Буду ўдзячны, калі дапоўніце, як менавіта вы вырашылі праблему, бо слаба ўяўляю вашу сітуацыю. У мяне гэты конфіг працуе. : /

      1. Я зусім заблытаўся, паставіў Ваш конфіг для location / pma / і ўсё працуе, нават праблемы з рэдырэкт пры cgi.fix_pathinfo 0 няма. Да гэтага наткнуўся на вырашэнне праблемы з рэдырэкт на гэтым сайце http://www.samundra.com.np/use-phpmyadmin-with-nginx-and-php7/1374 . Першы раз калі ішоў Вашым інструкцыям ня дадаў у конфіг «include fastcgi_params; fastcgi_param SCRIPT_FILENAME $ request_filename; "(не ведаю што робяць гэтыя два параметру), а без іх як я цяпер зразумеў аліяс у конфіге працаваць не будзе, уласна, затым паспрабаваў стварыць знакавую спасылку і наткнуўся на праблему з няправільным рэдырэкт на phpmyadmin. Увогуле, з за неразумення таго як і навошта працуюць параметры ў конфігу nginx я не змог выканаць інструкцыі простага Гайда))
        Ёсць адно пытанне: У мяне ўсяго два параметру ў location ~ \ .php $ {include snippets / fastcgi-php.conf; fastcgi_pass unix: /var/run/php5-fpm.sock;} Ці варта мне зрабіць яго як у вашай артыкуле nginx + php-fpm гатовы конфіг? Загадзя дзякуй!

        1. Адрозненне метадаў у тым, што па прыведзенай спасылцы папка / usr / share прапісаная, як каранёвая: root /usr/share/; . Пры гэтым, нельга ніяк змяніць назву локейшена / phpmyadmin. У адрозненне ад прыкладу тут, калі локейшн з любым імем, хоць / asdasd становіцца аліасы да тэчцы / usr / share / phpmyadmin. Такім чынам, можна абараніць PMA ад усялякіх ботаў. :)

          Вядома, у выпадку, аліасы варта прапісваць менавіта fastcgi_param SCRIPT_FILENAME $request_filename; , Месца стандартнага fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; .

          Апісанне зменных можна знайсці тут: https://nginx.org/ru/docs/varindex.html .

          А канфігурацыю з include snippets / fastcgi-php.conf можна пакінуць, як ёсць. Інструкцыя была напісана яшчэ на прыкладзе Debian 7, дзе ўсё зроблена не так зручна. У fastcgi-php.conf прадстаўлена больш правільная канфігурацыя са радком fastcgi_split_path_info ^(.+\.php)(/.+)$; . Хоць, працаваць можа і па старой інструкцыі. :)

          1. amigoplus.ru, дзякуй вялікі за такое падрабязнае тлумачэнне. Вінаваты ў сваёй непісьменнасці, ужо шкадую што ацаніў артыкул на 3. Ёсць куча артыкулаў і ніколі не ведаеш ці можна давяраць аўтару і проста копипастить, не ведаеш які будзе вынік і ці не прывядзе цябе да яшчэ большай колькасці памылак, па гэтым аддаю перавагу рабіць спачатку мінімальныя канфігурацыі пакуль не разбяруся ва ўсім сам і не буду ўпэўнены што дадзены спосаб для мяне аптымальны. Але цяпер навучыўся)) Сайт выдатны. дзякуй!

          2. Няма за што. :) А падыход правільны. Сапраўды, некаторыя нават не спрабуюць на справе тое, што пішуць у артыкулах. Абы набраць трафік. Таму і з'явіўся гэты блог, каб запісаць, што працуе.

Дадаць каментар

Ваш e-mail не будзе апублікаваны.