我在/ var / www中有一个CodeIgniter项目。我们将这个项目称为项目。所以我在/ var / www中有大量文件,在/ var / www / proj中有一个CodeIgniter项目。我迫切需要一个支持它的Nginx配置。我应该做一个虚拟主机吗?例如:/var/www/somewebsite.com/和/var/www/proj.somewebsite.com/。你能提供一个支持这个的工作Nginx + CodeIgniter配置吗?
我目前没有使用域名。我只是在VPS上。
谢谢!
答案 0 :(得分:0)
是肯定的。你必须使用虚拟主机,或创建服务器来监听不同的端口,以及它将如何服务器知道要服务的位置?除非你的意思是localhost/myporject1/
和localhost2/myproject2
之类的东西?然后只需将服务器设置为指向根/var/www
并调整fastcgi中的路径为CI
server {
listen 80;
server_name localhost;
root /var/www/;
location ~ /\. {
deny all;
}
#you codigniter project
location /yourcodigniterproject {
index index.html index.php;
try_files /cache$uri @web;
}
#your other project (if usign php replicate the top with difrent directives)
location /yourotherproject {
index index.html index.php;
try_files /cache$uri $uri
}
location @web {
client_max_body_size 10M;
expires 0;
fastcgi_pass unix:/var/run/php5-fpm.sock;
include /etc/nginx/fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/yourcodigniterproject/index.php;
fastcgi_param PATH_INFO $fastcgi_script_name;
}
}
但如上所述,创建虚拟主机更容易维护。为sites-available
中的每一个创建条目(假设您正在起诉linux)并添加,然后在ln -s
in
网站启用的情况下删除它们
我有这样的配置。一个虚拟服务器有一个站点codeignoter设置,另一个是纯静态网站,一个用于phpmyadmin等...