ubuntu server 14.04 安装了 nginx 后, 本想按照网上的教程配置 vhost , 奈何没有生成 sites-available 和 sites-enable 这两个文件夹, 看别人的教程好像都有这两个文件夹, 也卸了重抗投诉服务器装没卵用, 希望大神们能指点一二,小弟不胜感激了,谢谢!
1.11.3 ?你这是编译安装的吧。
不是,就是 apt-get install nginx
有 nginx.conf 就可以了吧
你想要就自己创建就好,然后在 nginx.conf 里面加句 include 或者自己看下 nginx.conf 已经 include 了哪些目录
主配置文件修改不太好吧,大多数教程都是从 site-[available|enable]里的 default 开始的
大型应用没搞过,一直是直接写 nginx.conf
就包含了这一个目录,自己建的话要改好多,好像还要建软连接,试过了一次,没搞好
把你的配置放在 /etc/nginx/conf.d/ 目录下, 文件名为 xxx.conf 即可.
并不是所有的都按 site-(available|enable) 这种套路来的.
哪里需要改很多,不就复制一行改个路径的事情,
你就直接写 xxx.conf 扔 conf.d 下面就好。
我试一下咯
觉得你这个是不是自己改源了,官方源安装应该有 site-[available|enable]的啊?
看你现在的配置,把 xxx.conf 扔 conf.d 里就行
14.04 Ubuntu 官方源 Nginx 绝对不是 1.11.3 。。。你改了 Nginx 的官方源吧。。。
的确改了源,不会是这个原因吧
你改了源,下到的 nginx 就不同了
https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-server-blocks-virtual-hosts-on-ubuntu-14-04-lts
这是我用的源,要把这两个字段删除,重新添加源吗?
```bash
$ echo "deb http://nginx.org/packages/mainline/ubuntu/ trusty nginx" >> /etc/apt/sources.list
$ echo "deb-src http://nginx.org/packages/mainline/ubuntu/ trusty nginx" >> /etc/apt/sources.list
```
你在 nginx.conf 里加上一句 include /etc/nginx/site-enable/*; 然后自己建好那两个文件夹就行了
感谢~ do 的文档确实不错,我现在是 nginx 和 PHP 还没结合起来, nginx 是搭建好了,但是访问 domain/info.php 不是 404 就是变成下载 info.php 这个文件
这是我的配置文件: /etc/nginx/conf.d/default.conf
```
server {
listen 80;
root /var/www/html;
server_name localhost;
koi8-r;
/var/log/nginx/log/host.access.log main;
location / {
index index.php index.html index.htm;
try_files $uri $uri/ =404;
}
404 /404.html;
redirect server error pages to the static page /50x.html
/> error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www/html/;
}
proxy the PHP scripts to Apache listening on 127.0.0.1:80
/> ~ \.php$ {
proxy_pass http://127.0.0.1;
pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
/> location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
deny access to .htaccess files, if Apache's document root
concurs with nginx's one
/> location ~ /\.ht {
deny all;
}
}
```
我都是直接在配置文件改 conf.d 都删掉的
什么删掉? default.conf 删掉? 自己建一个配置文件
网上你搜到的文档基本上都是按照官方源来讲解的,你换了源目录结构就不同了,当然也就不对了呀。。。
试试,我的配置
server {
.....
location ~ .php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_read_timeout 300;
include fastcgi_params;
}
}
我又改为了官方源,但是也没有这两个文件夹
不行的,我们 php 版本不一致,现在掉坑里了
哈哈,这个题目感觉楼主好蠢萌。。。不同包管理里的 nginx 好像配置文件组织方式都不太一样,这些配置的目录可以自己随意配置的,在 nginx.conf 写好就可以了
新的版本, 包里好像默认没有这样的配置了, 方式改变了. 自己建立配置吧.