Ubuntu 14 – Nginx – PHP5-fpm:安装了phpmyadmin但是403禁止访问

Nginx和PHP5-FPM安装并运行良好…

#我可以访问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并创build了一个符号链接到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带来login面板

  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; } } 

它添加以下位置后运行正常:

  location /phpmyadmin { index index.php; } 

这是我解决这个问题的方法:

第1步 :您应该SSH和运行命令

 sudo nano /etc/nginx/sites-available/default 

第2步 :找到块代码

 server { .... } 

然后在服务器块的“}”之前插入

  location /phpmyadmin { index index.php; } 

它看起来像这样

 server{ ...(your default)... 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; 

这里有一些你可以尝试的东西。 一个是disable_symlinks指令:

 location /phpmyadmin { disable_symlinks off; } 

另一种选择是使用别名而不是符号链接:

 location /phpmyadmin { alias /usr/share/phpmyadmin; } 

失去逗号,你很好

  index index.php, index.html index.htm;