6 nginx phpmyadmin ubuntu-14.04
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
Run Code Online (Sandbox Code Playgroud)
我安装了phpmyadmin并为phpmyadmin文件创建了一个符号链接
lrwxrwxrwx 1 root root 21 Nov 1 08:37 phpmyadmin -> /usr/share/phpmyadmin
Run Code Online (Sandbox Code Playgroud)
但是试图获得 http://www.example.com/phpmyadmin =>我得到403 Forbidden
使用符号链接,我不应该将与phpmyadmin相关的任何内容添加到我的nginx.conf中......可能会丢失什么?
更新1:将index.php添加到uri会带来登录面板
http://www.example.com/phpmyadmin/index.php
Run Code Online (Sandbox Code Playgroud)
我应该添加到我的默认con文件中直接获取它...我猜我的try文件无效..这是我的默认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;
}
}
Run Code Online (Sandbox Code Playgroud)
小智 8
添加以下位置后运行正常:
location /phpmyadmin {
index index.php;
}
Run Code Online (Sandbox Code Playgroud)
我已经添加了:
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;
}
}
Run Code Online (Sandbox Code Playgroud)
这样,当用户访问该目录时,/pma/
他们就会被定向到这/usr/share/phpmyadmin
也是一个稍微“安全”的选项!和以前一样,我也遇到了 403 错误!
但该403
错误的主要修复实际上是实现该行:
index index.html index.htm index.php;
Run Code Online (Sandbox Code Playgroud)
小智 6
这是我对这个问题的解决方案:
第1步:您应该SSH并运行命令
sudo nano /etc/nginx/sites-available/default
Run Code Online (Sandbox Code Playgroud)
第2步:找到块代码
server {
....
}
Run Code Online (Sandbox Code Playgroud)
然后在服务器块的"}"之前插入
location /phpmyadmin {
index index.php;
}
Run Code Online (Sandbox Code Playgroud)
它看起来像这样
server{
...(your default)...
location /phpmyadmin {
index index.php;
}
}
Run Code Online (Sandbox Code Playgroud)
希望这是你的!
您可以尝试以下几件事。一是disable_symlinks
指令:
location /phpmyadmin {
disable_symlinks off;
}
Run Code Online (Sandbox Code Playgroud)
另一种选择是使用别名而不是符号链接:
location /phpmyadmin {
alias /usr/share/phpmyadmin;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
29853 次 |
最近记录: |