关于 ubuntu 配置 lnmp 的问题

2016-06-03 17:37:51 +08:00
 william23

虽然现在搭建好了,但是是想配置虚拟主机

我参考了这个帖子的做法 http://blog.sina.com.cn/s/blog_66ac09390101ivep.html

目前没改动过,仍然是访问 localhost ,默认路径是 /etc/usr/share/nginx/html

而我当前的代码是放在 /etc/usr/share/nginx/william_test

我现在是参考这个文章在 /etc/nginx 下创建 vhosts 目录 文件名为 william.conf

里面的代码如下:

server {

listen 80;

server_name william;

location / {

root /etc/usr/share/nginx/william_test ;

index index.php index.html index.htm;

} error_page 500 502 503 504 /50x.html;

location = /50x.html {

root /etc/usr/share/nginx/william_test ;

}

location ~ .php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME william $fastcgi_script_name;

include fastcgi_params;

}

location ~ /.ht {

deny all;

}

}

最后 在 /etc/nginix.conf 文件里 include 起来

include /etc/nginx/vhosts/*;

最后重启 nginx

想问下各位大神,是这么配置的吗?我犯了什么错?

谢谢各位 Thanks

2565 次点击
所在节点    Ubuntu
14 条回复
owt5008137
2016-06-03 20:47:56 +08:00
https://github.com/owent-utils/bash-shell/blob/master/LNMP/lnmp_for_el7.sh
以前写得,里面有一些针对 php-fpm 和 wordpress 还有一些通用的系统的配置调优。不过是针对 centos 的。 ubuntu 大同小异吧,希望对你有用
EAimTY
2016-06-03 22:12:56 +08:00
server{
listen 80;
server_name localhost; //这里改成你的域名
root /home/www; //这里改成准备放网页文件的目录
index index.php index.html index.htm;
location ~ \.php${
try_files $uri = 404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_paramSCRIPT_FILENAME $document_root $fastcgi_script_name;
include fastcgi_params;
}
}
EAimTY
2016-06-03 22:15:23 +08:00
CentOS6 下配置 LNMP : https://www.eaimty.xyz/ToBeGay/2016/03/install-lnmp-on-centos6.html
除了 yum 安装软件包以外,其它步骤都可以在 Ubuntu 下用
realpg
2016-06-04 10:17:26 +08:00
为啥不用标准的配置方式呢

/etc/nginx/sites-available/ 下
把 default cp 出来一份编辑

如果确认要激活这个 vhost
/etc/nginx/sites-enabled/ 下 做一个符号链接到刚才那个文件 reload nginx 就激活了
hellopy
2016-06-04 14:20:31 +08:00
william23
2016-06-06 11:47:04 +08:00
@owt5008137
@EAimTY
@realpg
感谢回答,可是我是希望在默认的 localhost 上再添加一份,而不是把 localhost 去改掉,执行后的 效果应该是输入 wiiliam 和 localhost 分别去访问两个不同的路径
@realpg 尤其我试了下你的方法,的确 sites-availenable 两个都拿到了 但是默认走的还是 default nginx 服务也重启了 也没用
william23
2016-06-06 11:48:03 +08:00
@hellopy 我是想不用一键的,一键的已经安装成功了,也很好配,可是目前需求不是如此
william23
2016-06-06 11:56:47 +08:00
我是希望在默认的 localhost 上再添加一份,而不是把 localhost 去改掉,执行后的 效果应该是输入 wiiliam 和 localhost 分别去访问两个不同的路径
owt5008137
2016-06-06 12:15:58 +08:00
@william23 绑定多个域名的话多个 server 节点,每个 listen 不同的域名就行了。 nginx 配置查找是先查 location 里的,再查 server 里的,再查 http 里的。所以不想改默认配置的话,这些配置都可以配在 server 里
owt5008137
2016-06-06 12:17:00 +08:00
@william23 写错了,域名是在 server_name 里
william23
2016-06-06 15:04:06 +08:00
@owt5008137 是不是一定要 listen 不同端口? 比如说默认的是 listen 80 下一个 server 不能是 80 ,只能是其他端口?
EAimTY
2016-06-06 19:54:51 +08:00
@william23 首先把 william 解析到你的服务器,假如在本地就改 hosts 。然后在 vhost 目录下按照我给的那种格式建立两个 conf ,第一个的“ server_name ” 改成 william ,“ root ” 改成输入 william 时想访问的目录的绝对路径;第二个的“ server_name ”是 localhost ,“ root ”改成输入 localhost (或服务器 IP )时想访问目录的绝对路径。最后重启 nginx
william23
2016-06-08 10:42:19 +08:00
@EAimTY 恩,我后来是写在同一个配置文件里的,不过还是谢谢你啊,说的很详细
owt5008137
2016-06-11 13:39:53 +08:00
@william23 不需要, nginx 可以按 server_name 路由到不同的目标。不然的话一台机器上怎么部署多个网站啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/283298

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX