簡體   English   中英

列出了Apache本地虛擬主機,但不起作用

[英]Apache local virtual host is listed but doesn't work

我需要將我的網站配置為在Apache中作為虛擬目錄在本地服務器中進行訪問的幫助。 我正在嘗試使用端口8050,當我打開localhost:8050時,它顯示:

無法訪問此站點本地主機拒絕連接。 ERR_CONNECTION_REFUSED

當我嘗試在瀏覽器中訪問我的localhost:80時,它顯示默認空白頁面,並顯示消息“ It Works”
如果我在配置中將virtualhost更改為* .80,它會一直顯示默認消息“ It Works”,而不是我的頁面。

apachectl -t返回語法OK
命令:
apachectl -t -D DUMP_VHOSTS返回:

VirtualHost配置:
*:8050 personal.com(/private/etc/apache2/extra/httpd-vhosts.conf:24)

我的httpd.conf文件中的Servername是localhost,它還包含:
聽8050

聽本地主機:8050

這是我在etc / apache2 / extra / httpd-vhosts.conf中的httpd-vhosts:

<VirtualHost *:8050>
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot "/Users/renatobento/Documents/Projetos/Personal"
    ServerName personal.com
    ErrorLog "/private/var/log/apache2/personal.com-error_log"
    CustomLog "/private/var/log/apache2/personal.com-access_log" common
<Directory "/Users/renatobento/Documents/Projetos/Personal">
    Order allow,deny
    Allow from all
    Require all granted
</Directory>
</VirtualHost>

路徑“ / Users / renatobento / Documents / Projetos / Personal”似乎是正確的,並且包含帶有某些內容的簡單index.html,可在瀏覽器中使用文件協議運行:“ file:/// Users / renatobento / Documents / Projetos /personal/index.html”

已執行apachectl stopapachectl startapachectl restart數千次

在stop命令之后,localhost:80仍然顯示消息“ It Works”

我正在使用MAC OSX 10.3 High Sierra,Apache 2.4

服務器版本:Apache / 2.4.33(Unix)服務器內部版本:2018年4月3日23:45:11服務器模塊編號:20120211:76服務器已加載:APR 1.5.2,APR-UTIL 1.5.4使用以下命令編譯:APR 1.5。 2,APR-UTIL 1.5.4體系結構:64位服務器MPM:前叉線程:否分支:是(可變進程計數)服務器使用...編譯-D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAVE_IPV6(啟用了IPv4映射的地址)-D APR_USE_FLOCK_SERIALIZE -D APR_USE_PTHREAD_SERIALIZE -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -D DYNAMIC_MODULE_LIMIT / EXE = / DATE / ID = BIN -D /run/httpd.pid“ -D DEFAULT_SCOREBOARD =” logs / apache_runtime_status“ -D DEFAULT_ERRORLOG =” logs / error_log“ -D AP_TYPES_CONFIG_FILE =” / private / etc / apache2 / mime.types“ -D SERVER_CONFIG_FILE =” / private / etc /apache2/httpd.conf”

編輯:嘗試使用其他端口:9050,但仍無法正常工作

檢查是否有DocumentRoot 權限

/Users/renatobento/Documents/Projetos/Personal

設置為所有人都可以使用

您的整體配置似乎很好。


檢查您的/etc/hosts文件,如果其中包含類似

127.0.0.1    localhost
127.0.0.1    personal.com

要編輯此文件,請在終端中鍵入sudo nano /etc/hosts ,然后在編輯后鍵入sudo killall -HUP mDNSResponder刷新DNS緩存。

問題解決了。 很奇怪,看起來重啟Apache和緩存命令有時還不夠。 系統重新啟動后,該消息更改為403-禁止。

我用lsof -nP -i4TCP:80 | grep LISTEN檢查了端口lsof -nP -i4TCP:80 | grep LISTEN lsof -nP -i4TCP:80 | grep LISTEN lsof -nP -i4TCP:8050 | grep LISTEN lsof -nP -i4TCP:8050 | grep LISTEN lsof -nP -i4TCP:9050 | grep LISTEN lsof -nP -i4TCP:9050 | grep LISTEN

它顯示了4個httpd進程,即使apache停止也正在監聽:80,然后在重新啟動后出現了一個監聽正確端口的進程。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM