利用Apache/Virtualhost,在一台电脑上运营多个网站

首先

我需要一个使用MacOS X(El Capitan)的Apache运行多个网站的方法,所以在进行各种调查后尝试了一下。
另外,如果只是想启动服务器的话,可以先参考 “Yosemite(MacOS:10.10.X)启用Apache”。
El Capitan的启动方法也没有改变。

环境-Environment

苹果操作系统 iMacOS X (El Capitan)
Apache 2.4.16 (Unix)

前期准备

我会先完成Apache的初始设置。
参考:尝试在Yosemite(MacOS:10.10.X)上使用Apache
有关端口打开的方法,请咨询您的供应商。
我认为通常可以通过浏览器访问默认网关的地址进行设置,但是……

设定

现在我们将来进行Virtualhost的设置。

创建服务器文件夹

スクリーンショット 2016-04-28 18.15.21.png

httpd.conf的配置文件

我要修改安定的http.conf文件。

sudo vim /etc/apache2/httpd.conf

大约在第500行左右,
删除/include /private/etc/apache2/extra/httpd-vhosts.conf中的”#”符号。

スクリーンショット 2016-04-28 18.20.42.png

httpd-vhosts.conf的配置设置

我将编辑刚刚删除了#的httpd-vhosts.conf文件。

sudo vim /private/etc/apache2/extra/httpd-vhosts.conf

我会在这个文件的最底部连续写下设置内容。
这次的情况下,

    • ~/Sites/

 

    ~/FileServer/

我想把网站分配到这两个文件夹中,所以……

<virtualhost *:80>
    DocumentRoot "/Users/ユーザID/Sites/"
    ServerName 割り当てるDNSサーバのアドレス
    ErrorLog "/private/var/log/apache2/local.howtohp.com-error_log"
    CustomLog "/private/var/log/apache2/local.howtohp.com-access_log" common
</virtualhost>


<virtualhost *:80>
    DocumentRoot "/Users/ユーザID/FileServer/"
    ServerName 割り当てるDNSサーバのアドレス
    ErrorLog "/private/var/log/apache2/local.howtohp.com-error_log"
    CustomLog "/private/var/log/apache2/local.howtohp.com-access_log" common
</virtualhost>

我会按照这种方式办理。
关于分配DNS服务器地址,我使用了诸如NoIP的服务,所以指定了从那里获取的URL就行了。

スクリーンショット 2016-04-28 18.34.31.png

【注意】
如果没有进行指导的话,

<virtualhost *:80>
    DocumentRoot "/Users/ユーザID/Sites/"
    ServerName 割り当てるDNSサーバのアドレス
    ErrorLog "/private/var/log/apache2/local.howtohp.com-error_log"
    CustomLog "/private/var/log/apache2/local.howtohp.com-access_log" common
    <Directory /Users/ユーザID/Sites/>
        Require all granted
    </Directory>
</virtualhost>


<virtualhost *:80>
    DocumentRoot "/Users/ユーザID/FileServer/"
    ServerName 割り当てるDNSサーバのアドレス
    ErrorLog "/private/var/log/apache2/local.howtohp.com-error_log"
    CustomLog "/private/var/log/apache2/local.howtohp.com-access_log" common
    <Directory /Users/ユーザID/FileServer/>
        Require all granted
    </Directory>
</virtualhost>

如果不这样做,可能会显示“Forbidden”。

更改访问目标(通过hosts文件配置)。

将之前所设置的内容进行关联。

sudo vim /etc/hosts

我们将以下信息添加到hosts文件的末尾。

127.0.0.1 ~/SitesへのDNSのURL
127.0.0.1 ~/FileServerへのDNSのURL
スクリーンショット 2016-04-28 18.43.33.png

重启Apache

#設定ファイルに間違いがないかチェック
$ sudo apachectl configtest
Syntax OK    #これが出ればOK

$sudo apachectl restart

我认为你可以通过这个来访问。

请看这个。

    • MacのApacheでヴァーチャルホストを使ってテスト環境の構築

 

    • apache2.confにNameVirtualHostを書いたらNameVirtualHost has no effect and will be removed in the next releaseと言われました

 

    • UbuntuでVirtualHost設定【Apache】

 

    • 【Apache】MaxOSのApacheで複数のサイトを外部公開する方法

 

    【Apache(MacOS)】Apacheのバーチャルホストの設定方法がわからない
广告
将在 10 秒后关闭
bannerAds