Ubuntu的14 - Nginx的 - PHP5-FPM:phpMyAdmin安装,但403次禁止访问
的Nginx和PHP5-FPM安装并运行良好......Ubuntu的14 - Nginx的 - PHP5-FPM:phpMyAdmin安装,但403次禁止访问
#我可以同时访问http://www.example.com和http://www.example.com/info.php
$ ls -la /var/www/html
-rw-r--r-- 1 root root 868 Nov 1 08:16 index.html
-rw-r--r-- 1 root root 21 Nov 1 08:13 info.php
我phpMyAdmin安装和创建符号链接到phpMyAdmin文件
lrwxrwxrwx 1 root root 21 Nov 1 08:37 phpmyadmin -> /usr/share/phpmyadmin
而是试图让http://www.example.com/phpmyadmin =>我得到一个403禁止
使用符号链接,我不应该添加任何与phpmyadmin相关的任何东西到我的nginx.conf中...可能会丢失什么?
更新1:添加的index.php到URI带来的登录面板
http://www.example.com/phpmyadmin/index.php
我应该添加到我的默认CON文件直接得到它...我想我尝试文件无效。 这里是我的默认nginx站点con文件
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /var/www/html;
index index.php, index.html index.htm;
server_name example.com;
location/{
try_files $uri $uri/ index.html index.php =404;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www/html;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
这里有一些你可以尝试的东西。一个是disable_symlinks
指令:
location /phpmyadmin {
disable_symlinks off;
}
另一种选择是使用的,而不是一个符号链接别名:
location /phpmyadmin {
alias /usr/share/phpmyadmin;
}
它加入以下的位置后运行良好:
location /phpmyadmin {
index index.php;
}
我已添加:
location /pma/ {
alias /usr/share/phpmyadmin/;
index index.html index.htm index.php;
location ~ ^/pma(.+\.php)$ {
alias /usr/share/phpmyadmin$1;
fastcgi_pass unix:/var/run/php5-fpm.sock; #OR fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /usr/share/phpmyadmin$1;
include fastcgi_params;
fastcgi_intercept_errors on;
}
}
因此,当用户访问目录/pma/
时,他们会被定向到/usr/share/phpmyadmin
,这也是一个稍微“安全”的选项!正如以前我也有403错误!
但对于403
误差的主要修正实际上是贯彻落实行:
index index.html index.htm index.php;
而不是“位置/ pma /”更改为“位置/ pma”,因此不需要“/”。它只是让你在浏览器中输入网址时感到困惑......谢谢.. – 2016-01-20 18:18:57
这个工作对我来说,但只有在清除浏览器缓存后 – 2016-07-22 02:20:22
失去了逗号和你的罚款
index index.php, index.html index.htm;
这是我解决此问题:
步骤1:服务器块找块码
server {
....
}
,然后之前插入 “}”
location /phpmyadmin {
index index.php;
}
它看起来像:你应该SSH和运行命令
sudo nano /etc/nginx/sites-available/default
步骤2这
server{
...(your default)...
location /phpmyadmin {
index index.php;
}
}
希望这是你的!
谢谢你的提示,我试过了,bt总是在log:目录索引中找到同样的错误:“/ var/www/html/phpmyadmin /”是被禁止的,... – erwin 2014-11-01 15:07:55
你有'index index.php '在你的服务器块? – 2014-11-01 16:03:58
如果我请求http://www.example.com/phpmyadmin/index.php然后我得到登录面板...我有root/var/www/html; index index.php,index.html index.htm; 在我的服务器块... – erwin 2014-11-01 16:13:44