我无法让 kohana 应用程序运行。
服务器规格:ubuntu 14.04,nginx,php7.0-fpm
我有以下结构:
构建:(静态网站),服务器:(php-kohana 应用程序)
|-- build
| |-- fonts
| |-- images
| |-- index.html
| |-- scripts
| `-- styles
|-- server
| `-- cms
| |-- application
| |-- database
| |-- index.php
| |-- install.php.bkp
| |-- media
| |-- modules
| |-- system
| `-- vendor
以及以下 nginx 配置:
server {
listen 80 default_server;
listen [::]:80 default_server;
index index.php index.html index.htm index.nginx-debian.html;
root /srv/www/build/;
location = /{
}
location /server/cms/{
alias /srv/www/server/cms/;
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
#try_files $uri =404;
}
location ~ /\.ht {
deny all;
}
}
当我访问 / 我可以看到静态网站,
但是当我访问 /server/cms/ 时,我没有看到任何错误,只有一个空白页,/var/log/nginx/error.log 中没有日志
我可能错过了什么,为什么我没有收到任何错误?
答案1
您的 PHP 位置块未指定目录。因此,这意味着当转到http://www.example.com/index.php,nginx 就会尝试搜索/srv/www/build/index.php
不存在的。
我不知道 Kohana 应用程序是如何设计的,以及应该如何部署。如果你想显示/srv/www/server/cms/index.php
用户何时进入http://www.example.com/,您需要使用这个 PHPlocation
块:
location ~ \.php$ {
alias /srv/www/server/cms/;
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
}