내 nginx 설치에서 phpmyadmin에 문제가 있습니다.
내가 입력하는 경우 <ServerIP>/phpmyadmin
와의 로그, 내가로 리디렉션 <ServerIP>/index.php?<tokenstuff>
대신<ServerIP>/phpmyadmin/index.php?<tokenstuff>
Nginx 설정 파일 :
user nginx;
worker_processes 5;
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 2;
#gzip on;
include /etc/nginx/conf.d/*.conf;
}
Default.conf :
server {
listen 80;
server_name _;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root /usr/share/nginx/html;
try_files $uri =404;
fastcgi_pass unix:/tmp/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
deny all;
}
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass unix:/tmp/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
include fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_script_name;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
}
(구성 파일 정리에 대한 일반적인 팁도 허용됩니다)
답변
이것은 nginx 문제처럼 들리지 않습니다. 이것은 phpMyAdmin이 올바르게 설치되지 않은 것 같고 /
대신에 있다고 생각합니다 /phpmyadmin
. phpMyAdmin 구성을 확인하십시오.
답변
저자가 phpMyAdmin 재설치 문제를 해결했지만 로그인시 리디렉션을 처리하도록 nginx를 올바르게 구성해야합니다.
며칠 후 키보드로 머리를 부딪친 후에 마침내 진정한 해결책을 찾았고이 스레드는 여전히 Google 검색에서 우선 순위가 높으므로 여기에서 공유하고 있습니다.
링크에 명시된 바와 같이 : http://www.samundra.com.np/use-phpmyadmin-with-nginx-and-php7/1374
이 문제를 해결하려면 nginx 기본 사이트에 다음 코드 블록을 추가해야합니다.
sudo nano /etc/nginx/sites-available/default
이 블록을 server
블록에 배치하십시오.
# Phpmyadmin Configurations
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
#fastcgi_pass 127.0.0.1:9000;
#fastcgi_param HTTPS on; # <-- add this line
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
# Dealing with the uppercased letters
location /phpMyAdmin {
rewrite ^/* /phpmyadmin last;
}
언젠가 누군가에게 도움이되기를 바랍니다 …
답변
이 문제는 PHP-FPM의 현재 경로를 비활성화하는 cgi.fix_pathinfo = 0의 일반적인 구성으로 인해 발생합니다. 빠른 해결책 중 하나는 cgi.fix_pathinfo를 다시 1로 변경하거나 nginx의 가상 서버 블록에서 경로 매개 변수를 설정하는 것입니다.
답변
당신은 문제가 이것과 비슷한 것 같습니다 : https : //.com/questions/1011101/nginx-location-directive-doesnt-seem-to-be-working-am-i-missing-something
그것을 읽고 설정을 변경해도 여전히 문제가 있다면 알려주십시오!
답변
열다:
/var/lib/phpMyAdmin/config.inc.php
더하다:
$cfg['PmaAbsoluteUri'] = 'https://www.example.net/path_to_your_phpMyAdmin_directory/';
참조 :
https://docs.phpmyadmin.net/en/latest/config.html#basic-settings
.
답변
phpmyadmin1.com과 같은 도메인 이름으로 virtaul 호스트를 램프 서버에 추가하십시오.
server {
#listen 80 default_server;
#listen [::]:80 default_server ipv6only=on;
root /var/www/phpmyadmin;
#some /var/www/html/phpmyadmin
index index.php index.html index.htm;
server_name phpmyadmin1.com;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
root /usr/share/nginx/html;
try_files $uri =404;
fastcgi_pass unix:/tmp/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
호스트 파일 편집
이 줄을 맨 아래에 추가하십시오
192.168.1.xx phpmyadmin1.com
저장하고 닫은 다음 서버를 다시 시작하십시오.
service nginx restart
service php5-fpm restart
브라우저에서 가상 호스트 URL에 액세스하십시오. phpmyadmin 로그인 페이지를 참조하십시오.
답변
이것 만이 나를 위해 일했다
location /utils/phpmyadmin/ {
try_files $uri $uri/ =404;
index index.php index.html index.htm
proxy_set_header Proxy "";
}