nginx - 为 yii 2 设置 nginx
问题描述
我尝试将 yii2 安装到 nginx。
旧设置:
server {
listen 80;
root /var/www/mp.test/public_html;
index index.html index.htm;
server_name mp.test www.mp.test;
location /pma {
alias /usr/share/phpmyadmin/;
location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
include fastcgi_params;
fastcgi_ignore_client_abort off;
}
}
}
和文件夹 /var/www/mp.test/public_html/index.html
现在我将 yii2 安装到文件夹 public_html,并创建新设置
server {
listen 80;
root /var/www/mp.test/public_html/web;
index index.html;
server_name mp.test www.mp.test;
location /pma {
alias /usr/share/phpmyadmin/;
location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
include fastcgi_params;
fastcgi_ignore_client_abort off;
}
}
}
我收到错误 403。如何设置服务器?
解决方案
这里有官方配置check this
server {
set $host_path "/www/mysite";
access_log /www/mysite/log/access.log main;
server_name mysite;
root $host_path/htdocs;
set $yii_bootstrap "index.php";
charset utf-8;
location / {
index index.html $yii_bootstrap;
try_files $uri $uri/ /$yii_bootstrap?$args;
}
location ~ ^/(protected|framework|themes/\w+/views) {
deny all;
}
#avoid processing of calls to unexisting static files by yii
location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
try_files $uri =404;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php {
fastcgi_split_path_info ^(.+\.php)(.*)$;
#let yii catch the calls to unexising PHP files
set $fsn /$yii_bootstrap;
if (-f $document_root$fastcgi_script_name){
set $fsn $fastcgi_script_name;
}
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fsn;
#PATH_INFO and PATH_TRANSLATED can be omitted, but RFC 3875 specifies them for CGI
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fsn;
}
# prevent nginx from serving dotfiles (.htaccess, .svn, .git, etc.)
location ~ /\. {
deny all;
access_log off;
log_not_found off;
}
}
推荐阅读
- php - 错误方法NotallowedHttpException Laravel
- node.js - Mongoose findOneAndUpdate 在更新文档后偶尔会返回 null
- javascript - 从外部来源获取问题
- python - 从python 2.7中的嵌套json(来自json响应)中提取字段
- hyperledger-fabric - 错误:提案失败(错误:rpc 错误:代码 = 不可用 desc = 传输正在关闭)
- javascript - VXML 检查正在播放的音频
- python-3.x - sphinx, rinohtype: 获取条纹表
- angular - 之后如何执行下一个 rxjs 请求?
- powerbi - PowerBi DAX 写入 DAX 以比较日期时间
- oracle-sqldeveloper - 通过 UI 打开表数据时 SQLDeveloper 不显示任何数据