您好,我已经安装了最新的稳定版本的Nginex(1.4.4),并希望安装phpmyadmin,不幸的是,当我尝试通过http:// 192在我的浏览器中打开phpmyadmin出现以下错误。 。 。 / phpmyadmin的:
404 Not Found Nginx/1.4.4
究竟是什么原因,Nginx无法findphpmyadmin文件?
这是我的/etc/Nginx/Nginx.conf文件的内容:
user Nginx; worker_processes 4; 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; #gzip on; include /etc/Nginx/conf.d/*.conf; }
许多问候
如何从PHP文件重新启动linux
Nginx不redirect到phpmyadmin的index.PHP页面
RewriteRule ^(。*)/ $?path = $ 1 是什么意思在我的.htaccess?
Docker与一个nginx和一个共享一个UNIX套接字的uwsgi容器
Docker中的Nginx状态页面
我失去了Nginx.pID,它消失了
约30个RoR应用程序等待(冻结)1个应用程序启动..如何解决这个问题?
Ansible Playbook运行Shell命令
错误的__DIR__魔术常数值
/etc/Nginx/Nginx.conf中的未知指令“server”:4
在你的文档根目录下创建一个符号并不是一个好主意,这只是要求在www中有一个phmyadmin快捷方式。
正确的方法是创建一个名为PHP的文件并添加到/ etc / Nginx / sites-available。 您可以复制下面的文件,但将端口号更改为别的。
server { Listen 30425; # Don't want to log accesses. #access_log /dev/null main; access_log /var/log/Nginx/PHP.acces_log main; error_log /var/log/Nginx/PHP.error_log info; root /usr/share/phpmyadmin; index index.PHP index.HTML index.htm; error_page 401 403 404 /404.PHP; location ~ .*.PHP$ { include fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.PHP; fastcgi_param SCRIPT_filename $document_root$fastcgi_script_name; fastcgi_param SERVER_name $http_host; fastcgi_ignore_clIEnt_abort on; } }
现在,您需要对启用了网站的目录进行符号链接
ln -s / etc / Nginx / sites-available / PHP // etc / Nginx / sites-enabled
现在您需要将此代码添加到Nginx.conf的Logging Settings部分
log_format main '$remote_addr – $remote_user [$time_local] ' '”$request” $status $body_bytes_sent “$http_referer” ' '”$http_user_agent” “$http_x_forwarded_for”' ;
现在您可以通过http://example.com:30425访问您的phpmyadmin
我按照https://www.digitalocean.com/community/articles/how-to-install-phpmyadmin-on-a-lemp-server上的指示 *** 作,并通过以下命令链接了Nginx和phpmyadmin:
sudo ln -s /usr/share/phpmyadmin/ /usr/share/Nginx/HTML (the folder "www" was replaced in the newer versions of Nginx through "HTML") sudo service Nginx restart
如果我现在尝试通过“http:// 192。。。/ phpmyadmin”启动phpmyadmin,那么在我的浏览器中会出现以下错误:
403 ForbIDden Nginx/1.4.4
如果我尝试通过“http:// 192 …。/ .phpmyadmin / index.PHP”来启动phpmyadmin,index.PHP文件只能被下载。
许多问候
这里提供的答案没有帮助我,原因不明。 我怀疑我的conf文件的其他部分排除了进入phpmyadmin目录。
不想花费太长的时间修复它的工作,我只是将我的工作conf文件从www.example.com复制到phpmyadmin.example.com,并将目录设置为/ usr / share / phpmyadmin。 然后我做了Nginx -s的重装,我很高兴没有遇到正确的403/502错误。 我也相信http://phpmyadmin.example.com比随机黑客尝试他们的脚本比http://www.example.com/phpmyadmin域更安全,但它确实需要为DNS的通配符设置正确您的域名,即,使地址解析到您的服务器。
希望这可以帮助任何人感到沮丧的简单任务,让phpmyadmin与Nginx的工作。
如user1941083解释。 您只需要在phpmyadmin和您的网站目录之间建立一个符号链接。
sudo ln -s /usr/share/phpmyadmin/ /usr/share/Nginx/www
之后,修改/ etc / Nginx / sites-available中的Nginx设置。 更改:
index index.HTML index.HTML;
至 :
index index.HTML index.HTML index.PHP;
只需尝试使用http://domain-name-or-ip-address/phpmyadmin/index.PHP
有时Nginx不会自动使用index.PHP,我们必须通过改变Nginx.conf文件中的位置来告诉它,或者像上面那样手动添加index.PHP到url中。
我知道这是晚了,但我有一些在线教程和建议后,但没有成功,同样的问题。 我也尝试了@STH在这个页面上的答案,但仍然存在错误。
我不得不重新启动以下服务:
sudo systemctl restart Nginx.service sudo systemctl restart PHP-fpm
这样做的技巧:将守护进程配置为在启动时启动,以确保所有LEMP程序在任何服务器重新启动后自动启动:
sudo systemctl enable Nginx MysqLd PHP-fpm
尝试创建phpmyadmin位置和Nginx www之间的符号链接:
sudo ln -s /usr/share/phpmyadmin/ /usr/share/Nginx/HTML
在这之后,你可以得到403 ForbIDden,但是应该在index.HTML和其他的服务器标签里添加index.PHP:
/etc/Nginx/sites-available/default
然后重新启动Nginx
总结以上是内存溢出为你收集整理的Nginx找不到phpMyAdmin全部内容,希望文章能够帮你解决Nginx找不到phpMyAdmin所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)