iT邦幫忙

0

XAMPP 即使設定不同 PORT 無法多個站?

httpd.conf

Listen 9001
Listen 8000
DocumentRoot "/Users/XXX/XXX/a"
<Directory "/Users/XXX/XXX/a">
    Options Indexes FollowSymLinks ExecCGI Includes
    AllowOverride All
    Require all granted
</Directory>

DocumentRoot "/Users/XXX/XXX/b"
<Directory "/Users/XXX/XXX/b">
    Options Indexes FollowSymLinks ExecCGI Includes
    AllowOverride All
    Require all granted
</Directory>

httpd-vhosts.conf

<VirtualHost *:8000>
    ServerAdmin XXX@gmail.com
    DocumentRoot "/Users/XXX/XXX/b"
    ServerName localhost:8000
</VirtualHost>

<VirtualHost *:9001>
    ServerAdmin XXX@gmail.com
    DocumentRoot "/Users/XXX/XXX/a"
    ServerName localhost:9001
</VirtualHost>

好怪,我一開始只有 9001 ,訪問 127.0.0.1:9001 沒問題
但是當我加了一個 8000後
我訪問 127.0.0.1:9001 變成是 8000 .... 9001的站不見?
我把 8000 刪掉之後,9001 又變正常。。。

weiclin iT邦高手 4 級 ‧ 2018-11-24 17:34:03 檢舉
https://serverfault.com/questions/246445/how-do-i-create-virtual-hosts-for-different-ports-on-apache
小松菜奈 iT邦研究生 5 級 ‧ 2018-11-24 19:49:25 檢舉
照做,卻還是一樣,真怪

2 個回答

0
Samと可樂快跑
iT邦研究生 2 級 ‧ 2018-11-24 20:17:32
最佳解答

如果是自己的電腦不用這樣設定吧?
去找出hosts(你應該知道這隻檔在那吧!)
然後如下設定:(這是舉例)

127.0.0.1  web1.localhost
127.0.0.1  web2.localhost
127.0.0.1  web3.localhost
以此類推

然後vhosts.conf

<VirtualHost *:8000>
    ServerAdmin XXX@gmail.com
    DocumentRoot "網站的總根目錄,如果在本機要開放的話"
    ServerName localhost
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin XXX@gmail.com
    DocumentRoot "/Users/XXX/XXX/web1"
    ServerName web1.localhost
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin XXX@gmail.com
    DocumentRoot "/Users/XXX/XXX/web2"
    ServerName web2.localhost
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin XXX@gmail.com
    DocumentRoot "/Users/XXX/XXX/web3"
    ServerName web3.localhost
</VirtualHost>

這樣子就可以通通走80port但對應不同的資料夾也就是不同的本地端網站了。
另外我是照抄你的,因為不知道你要設ServerAdmin的理由,通常我的設定在本機是不需要這個的。

0
yoching
iT邦高手 1 級 ‧ 2018-11-26 09:55:16

我覺得,最大的問題是。什麼時候servername可以指定port了?
理論上,你在重啟你的httpd時,因該會有一些警告訊息出來才對。

大多數都會用子域名的方式來做區分不同站。
反正如果是要本機測試的話,改一下host檔案就可以做測試了
如可樂給你的方式這樣就好。

我要發表回答

立即登入回答