zoukankan      html  css  js  c++  java
  • Ubuntu Apache 域名配置

    2018.4.12

    Ubuntu Apache 域名配置


    Ubuntu Apache 配置篇


    参考 电子工业出版社, Ubuntu完美应用, 第3版, 及各种大神网上的帖子, 谢谢!


    . 序言


    一台Web 服务器利用虚拟技术, 把Apache 服务器分成许多 “虚拟” 的主机。 实现网站共享硬件资源, 网络资源, 降低了Web 服务的运营成本。

    Apache 主要支持3 种虚拟主机技术, 基于域名, IP地址, 端口。 Ubuntu 中默认基于域名虚拟主机技术。

    服务器只需一个IP 地址, 就可以创建多台虚拟主机。 利用HTTP 协议访问请求中包含DNS 域名的信息的实现, 根据不同的域名访问相应的网站。


    Tip: 我们在一台机子上, 利用Apache 配置, 给每个目录下的代码项目配上一个自定义的名字, 也就是域名, 然后访问此域名, 就可以访问到这个项目。 域名得需要购买, 若自己配置的没有购买的域名, 只能本地电脑访问。


    . 配置


    . 需要的文件或文件夹, /etc/hosts, /etc/apache2/apache2.conf/etc/apache2/sites-available/etc/apache2/sites-enabled, 你的域名指向的根目录。


    1) 注册你想要的域名在你本地的IP


    sudo vim /etc/hosts


    打开主机文件hosts, 你的本地机 127.0.0.1 指向localhost, 按键i 开始写入, 把你自己想要的域名另起一行, 以同样的格式写上。

    按键Esc 输入:wq, 保存退出, 按域名注册成功, 你的IP 就会为你的域名服务。

    2) 打开apache2.conf 检查


    sudo vim /etc/apache2/apache2.conf

    打开apache 配置文件翻到最下面的几行, 查看有无此句话, IncludeOptional sites-enabled/*.conf, 引入虚拟主机配置文件。

    Tip: 这句话就是让你之后的虚拟主机配置生效的关键。 一般是有的, 检查一下。


    3/etc/apache2/sites-available 文件夹, /etc/apache2/sites-enabled 文件夹


    . 修改这两个文件夹的权限, 因为一会要创建文件。


    sudo chmod 777 /etc/apache2/sites-available

    sudo chmod 777 /etc/apache2/sites-enabled


    . sites-available 文件夹下创建一个文件


    再次文件夹下有原本的两个文件, 000-default.conf default-ssl.confLAMP 配置篇讲到修改根目录时用到过000-default.conf, 但不是在此文件夹下编辑的, 因为仅此是不管用的。

    创建一个新的文件, 名字随你, 可以复制000-default.conf 文件后改名字, 再对里面的配置作修改即可。


    cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/newvh.conf


    Tip: 复制到相同文件夹下, 并重命名。


    . 修改文件配置


    sudo vim /etc/apache2/sites-available/newvh.conf

    这是我已经配置好的。


    <VirtualHost *:80>               # 所有域名, 80 端口

    DocumentRoot /home/loseself/loseself    # 此域名指向的根目录

    ServerName rainstorm.im           # 域名名称

    ServerAlias                   # 域名别名, 用空格隔开

    ServerAdmin lose@loseself.com        # 管理员邮箱, 随便填


    <Directory "/home/loseself/loseself">   # 对根目录的设置                         

    Options Indexes FollowSymLinks ExecCGI  # ExecCGI, 公共网关接口, 在该目录下准许使用CGI。

    AllowOverride All

    Order allow,deny


    # 这句是重点, 可以让其主机访问, 若需要改变访问的对象, 可以搜索一下, 没有这句话你配置的域名都会指向最初的根目录。

    Allow from all                    # 允许所有主机访问

    Require all granted

    </Directory>


    ErrorLog ${APACHE_LOG_DIR}/error.log    # 错误日志路径

    # 访问日志

    CustomLog ${APACHE_LOG_DIR}/access.log combined

    </VirtualHost>


    . Esc, :wq, 保存修改。


    . 把此文件链接到sites-enabled 文件夹下


    sudo ln -s ../etc/apache2/sites-available/newvh.conf /etc/apache2/sites-enabled/newvh.conf


    Tip: 一定要加../, 其他的文件就是这么写的。 相对路径

    4) 在根目录下创建些东西

    我在根目录下放了一个index.php 文件, 文件里写了:

    <?php

    phpinfo();

    ?>

    当读到此目录时可以自动打开此文件。 因为Apache配置里面配置。


    5) 开启或重启Apache 服务

    sudo systemctl start apache2

    sudo systemctl restart apache2


    6) 打开浏览器

    在地址栏输入你的域名加上斜线。 我的是rainstorm.im/



    这就是最后了。 看到你想要的效果说明成功了, 但显示的效果一定要和你的默认根目录有区别, 以便辨认。


    Tips: 愿用我个人的时间节约你们更多的时间。

      启sublime 配置篇。

  • 相关阅读:
    leetcode -- Maximum Depth of Binary Tree
    leetcode -- Binary Tree Level Order Traversal
    leetcode -- Binary Tree Inorder Traversal
    leetcode -- Subsets II
    Egret入门学习日记 --- 第十七篇(书中 7.4~8.2节 内容)
    Egret入门学习日记 --- 问题汇总
    Egret入门学习日记 --- 第六篇(书中 3.6~3.9节 内容)
    Egret入门学习日记 --- 第十六篇(书中 6.10~7.3节 内容)
    Egret入门学习日记 --- 第十五篇(书中 6.1~6.9节 内容)
    Egret入门学习日记 --- 第十四篇(书中 5.4~5.6节 内容)
  • 原文地址:https://www.cnblogs.com/loseself/p/8829988.html
Copyright © 2011-2022 走看看