V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
william23
V2EX  ›  Ubuntu

关于 ubuntu 配置 lnmp 的问题

  •  
  •   william23 · 2016-06-03 17:37:51 +08:00 · 2409 次点击
    这是一个创建于 2883 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

    我参考了这个帖子的做法 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

    14 条回复    2016-06-11 13:39:53 +08:00
    owt5008137
        1
    owt5008137  
       2016-06-03 20:47:56 +08:00 via Android
    https://github.com/owent-utils/bash-shell/blob/master/LNMP/lnmp_for_el7.sh
    以前写得,里面有一些针对 php-fpm 和 wordpress 还有一些通用的系统的配置调优。不过是针对 centos 的。 ubuntu 大同小异吧,希望对你有用
    EAimTY
        2
    EAimTY  
       2016-06-03 22:12:56 +08:00 via Android
    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
        3
    EAimTY  
       2016-06-03 22:15:23 +08:00 via Android
    CentOS6 下配置 LNMP : https://www.eaimty.xyz/ToBeGay/2016/03/install-lnmp-on-centos6.html
    除了 yum 安装软件包以外,其它步骤都可以在 Ubuntu 下用
    realpg
        4
    realpg  
       2016-06-04 10:17:26 +08:00
    为啥不用标准的配置方式呢

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

    如果确认要激活这个 vhost
    /etc/nginx/sites-enabled/ 下 做一个符号链接到刚才那个文件 reload nginx 就激活了
    hellopy
        5
    hellopy  
       2016-06-04 14:20:31 +08:00
    william23
        6
    william23  
    OP
       2016-06-06 11:47:04 +08:00
    @owt5008137
    @EAimTY
    @realpg
    感谢回答,可是我是希望在默认的 localhost 上再添加一份,而不是把 localhost 去改掉,执行后的 效果应该是输入 wiiliam 和 localhost 分别去访问两个不同的路径
    @realpg 尤其我试了下你的方法,的确 sites-availenable 两个都拿到了 但是默认走的还是 default nginx 服务也重启了 也没用
    william23
        7
    william23  
    OP
       2016-06-06 11:48:03 +08:00
    @hellopy 我是想不用一键的,一键的已经安装成功了,也很好配,可是目前需求不是如此
    william23
        8
    william23  
    OP
       2016-06-06 11:56:47 +08:00
    我是希望在默认的 localhost 上再添加一份,而不是把 localhost 去改掉,执行后的 效果应该是输入 wiiliam 和 localhost 分别去访问两个不同的路径
    owt5008137
        9
    owt5008137  
       2016-06-06 12:15:58 +08:00 via Android   ❤️ 1
    @william23 绑定多个域名的话多个 server 节点,每个 listen 不同的域名就行了。 nginx 配置查找是先查 location 里的,再查 server 里的,再查 http 里的。所以不想改默认配置的话,这些配置都可以配在 server 里
    owt5008137
        10
    owt5008137  
       2016-06-06 12:17:00 +08:00 via Android
    @william23 写错了,域名是在 server_name 里
    william23
        11
    william23  
    OP
       2016-06-06 15:04:06 +08:00
    @owt5008137 是不是一定要 listen 不同端口? 比如说默认的是 listen 80 下一个 server 不能是 80 ,只能是其他端口?
    EAimTY
        12
    EAimTY  
       2016-06-06 19:54:51 +08:00 via Android   ❤️ 1
    @william23 首先把 william 解析到你的服务器,假如在本地就改 hosts 。然后在 vhost 目录下按照我给的那种格式建立两个 conf ,第一个的“ server_name ” 改成 william ,“ root ” 改成输入 william 时想访问的目录的绝对路径;第二个的“ server_name ”是 localhost ,“ root ”改成输入 localhost (或服务器 IP )时想访问目录的绝对路径。最后重启 nginx
    william23
        13
    william23  
    OP
       2016-06-08 10:42:19 +08:00
    @EAimTY 恩,我后来是写在同一个配置文件里的,不过还是谢谢你啊,说的很详细
    owt5008137
        14
    owt5008137  
       2016-06-11 13:39:53 +08:00 via Android   ❤️ 1
    @william23 不需要, nginx 可以按 server_name 路由到不同的目标。不然的话一台机器上怎么部署多个网站啊
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3403 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 11:37 · PVG 19:37 · LAX 04:37 · JFK 07:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.