针对Yii框架的Nginx配置及多个虚拟域名的配置

前言

Yii框架是一个非常好用的PHP框架,开发快,上手容易,自推出以来广受好评,对于基本的Yii框架开发来说,不需要特殊配置,但是对于一些高级功能,就需要对你的服务器进行一些设置了。

正文

我所用到的服务器是Ubuntu16.04下的Nginx,所以这里就针对Yii框架的Nginx做一个小小的总结。

需要满足的特性

1、Yii框架的URL重写规则(此规则需要Nginx0.8.6版本以上支持) 2、对于.svn、.git等版本控制文件的忽略 3、一些不应该直接访问的文件夹(例如framework、protected等)的禁止直接访问 4、静态资源的缓存优化

配置文件

配置文件目录:

/etc/nginx/sites-available

复制一个该文件夹下的default到该目录下并重命名为 www.example.com,作为虚拟域名的配置文件,复制并重命名命令如下:

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/www.example.com

然后使用文字编辑器打开:

sudo gedit /etc/nginx/sites-available/www.example.com

将原有内容清除并将如下内容复制到该文件中

server { #监听端口 listen 80; listen [::]:80; #字符集设置 charset utf-8; #项目根目录设置 root /var/www/html/example.com/; #默认起始页设置 index index.html index.htm index.nginx-debian.html index.php; #域名设置 server_name www.example.com; #关闭不必要的日志 location = /favicon.ico { log_not_found off; access_log off; } #设置以下目录不能直接被访问 location ~ ^/(protected|framework|themes/w /views) { deny all; log_not_found off; access_log off; } #设置URL重写 location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $uri/ /index.php?$args; } #设置PHP解释器 # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ .php$ { include snippets/fastcgi-php.conf; # With php5.6-cgi alone: # fastcgi_pass 127.0.0.1:9000; # With php5.6-fpm: fastcgi_pass unix:/run/php/php5.6-fpm.sock; #fastcgi_index index.php; fastcgi_param HTTPS on; include fastcgi.conf; if (!-f $request_filename){ rewrite (.*) /index.php; } } #设置静态资源缓存优化 location ~* .(js|css|png|jpg|jpeg|gif|ico)$ { expires max; log_not_found on; } #设置版本控制文件忽略 # prevent nginx from serving dotfiles (.htaccess, .svn, .git, etc.) location ~ /. { deny all; access_log off; log_not_found off; } }

最后,使用命令:

sudo ln -s /etc/nginx/sites-available/www.example.com /etc/nginx/sites-enabled/www.example.com

创建一个软连接到sites-enabled下,然后,编辑hosts文件:

sudo gedit /etc/hosts

在最后一行添加:

127.0.0.1 www.example.com

就完成了配置


补充

sites-available与sites-enabled之间的关系

sites-available可以看做是一个配置仓库,暂时不用的虚拟域名、废弃的虚拟域名、未配置好的虚拟域名,都可以放在这里,它并不会被启用。若要启用当前域名配置,需要在sites-enabled下为他创建一个软连接,才算是正式启用。

更多关于云服务器域名注册虚拟主机的问题,请访问西部数码官网:www.west.cn

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » 针对Yii框架的Nginx配置及多个虚拟域名的配置

登录

找回密码

注册