ubuntu server 14.04 安装了 nginx 后, 本想按照网上的教程配置 vhost , 奈何没有生成 sites-available 和 sites-enable 这两个文件夹, 看别人的教程好像都有这两个文件夹, 也卸了重装没卵用, 希望大神们能指点一二,小弟不胜感激了,谢谢!
1
wzxjohn 2016-07-29 08:19:55 +08:00 via iPhone
1.11.3 ?你这是编译安装的吧。
|
3
wolegequ 2016-07-29 08:23:36 +08:00 via Android
有 nginx.conf 就可以了吧
|
4
mml 2016-07-29 08:24:31 +08:00
你想要就自己创建就好,然后在 nginx.conf 里面加句 include 或者自己看下 nginx.conf 已经 include 了哪些目录
|
5
freaks OP @wolegequ 主配置文件修改不太好吧,大多数教程都是从 site-[available|enable]里的 default 开始的
|
8
xqin 2016-07-29 08:37:26 +08:00
把你的配置放在 /etc/nginx/conf.d/ 目录下, 文件名为 xxx.conf 即可.
并不是所有的都按 site-(available|enable) 这种套路来的. |
11
yalay 2016-07-29 09:06:20 +08:00
觉得你这个是不是自己改源了,官方源安装应该有 site-[available|enable]的啊?
|
12
yalay 2016-07-29 09:07:12 +08:00
看你现在的配置,把 xxx.conf 扔 conf.d 里就行
|
13
wzxjohn 2016-07-29 09:09:49 +08:00
14.04 Ubuntu 官方源 Nginx 绝对不是 1.11.3 。。。你改了 Nginx 的官方源吧。。。
|
15
nisekoi 2016-07-29 09:21:03 +08:00 via iPhone
你改了源,下到的 nginx 就不同了
|
16
wingoo 2016-07-29 09:23:56 +08:00
|
17
freaks OP @nisekoi 这是我用的源,要把这两个字段删除,重新添加源吗?
```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 ``` |
18
stormyyd 2016-07-29 09:25:34 +08:00 via Android
你在 nginx.conf 里加上一句 include /etc/nginx/site-enable/*; 然后自己建好那两个文件夹就行了
|
19
freaks OP @wingoo 感谢~ 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; #charset koi8-r; #access_log /var/log/nginx/log/host.access.log main; location / { index index.php index.html index.htm; try_files $uri $uri/ =404; } #error_page 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 # #location ~ \.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; } } ``` |
20
lslqtz 2016-07-29 10:29:37 +08:00 via iPhone
我都是直接在配置文件改 conf.d 都删掉的
|
22
wzxjohn 2016-07-29 11:53:33 +08:00 via iPhone
@freaks 网上你搜到的文档基本上都是按照官方源来讲解的,你换了源目录结构就不同了,当然也就不对了呀。。。
|
23
yalay 2016-07-29 12:07:15 +08:00
试试,我的配置
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; } } |
25
kiwi95 2016-07-29 12:31:38 +08:00
哈哈,这个题目感觉楼主好蠢萌。。。不同包管理里的 nginx 好像配置文件组织方式都不太一样,这些配置的目录可以自己随意配置的,在 nginx.conf 写好就可以了
|
26
cst4you 2016-07-29 18:30:46 +08:00
新的版本, 包里好像默认没有这样的配置了, 方式改变了. 自己建立配置吧.
|