내가 갈 때 내 라즈베리 파이에http://로컬호스트/Apache2 debian 기본 페이지가 보입니다.
그래서 내가 갔어
/var/www/html/index.html
페이지에 변경 사항이 있는지 확인하기 위해 소스 코드를 변경했지만 아무것도 변경되지 않았습니다.
그렇다면 동일한 폴더를 실행하고 공유하는 다른 서버가 있을까요?
sudo netstat | grep apache
아무것도 표시되지 않고 아무것도 표시되지 않습니다.httpd
답변1
실패 하면 wget -O - http://localhost
브라우저 캐시에서 가져와야 합니다.
답변2
당신은 몇 가지 간단한 실수를 저질렀습니다.
먼저, HTTP/HTTPS 서비스의 포트 서비스 이름이 apache 대신 http 또는 https로 지정됩니다.
서비스 이름을 확인하려면:
$ grep http /etc/services
http 80/tcp www # WorldWideWeb HTTP
https 443/tcp # http protocol over TLS/SSL
http-alt 8080/tcp webcache # WWW caching service
http-alt 8080/udp
둘째, 청취 서비스를 보려면 -a
옵션을 제공해야 합니다 netstat
.
따라서 다음을 실행해야 합니다.
netstat -a | grep http
또는:
$ netstat -a | grep LISTEN | grep http
tcp 0 0 0.0.0.0:http 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:https 0.0.0.0:* LISTEN
Apache가 실행 중인지 확인하고 프로세스를 확인할 수도 있습니다.
$ ps ax | grep apache
2362 ? Ss 0:00 /usr/sbin/apache2 -k start
2366 ? S 0:00 /usr/sbin/apache2 -k start
2367 ? S 0:00 /usr/sbin/apache2 -k start
2368 ? S 0:00 /usr/sbin/apache2 -k start
2369 ? S 0:00 /usr/sbin/apache2 -k start
2370 ? S 0:00 /usr/sbin/apache2 -k start
23476 pts/0 S+ 0:00 grep apache
이렇게 하면 Apache가 실행 중인지 알 수 있습니다.
페이지 변경의 경우: Debian 또는 Raspbian을 사용하는 경우 기본값은 참입니다 /var/www/html
. 브라우저에 이전 버전이 캐시되어 있을 가능성이 높습니다. 당신이 할 수 있는 최선은 기본 구성을 변경하는 것이지만, 그렇게 하는 것을 기억할 것이라고 생각합니다.
페이지 캐싱의 경우 브라우저에 전적으로 결함이 있는 것은 아닙니다. 특정 페이지가 캐시되지 않았음을 나타내려면 헤더 신호 데이터를 클라이언트 소프트웨어(브라우저, 프록시)에 반환해야 합니다.
즉, 다음 헤더는 다음과 같습니다.
Cache-Control: no-cache, no-store, must-revalidate
Pragma: no-cache
Expires: 0
특정 페이지가 HTML에 캐시되지 않도록 표시할 수도 있습니다.
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
자세한 내용은 다음을 참조하세요.모든 브라우저에서 웹 캐시를 제어하는 방법은 무엇입니까?
추신: 분명히 동적 콘텐츠가 포함된 HTML 페이지의 경우 페이지가 캐시되는 것을 원하지 않는다는 점을 나타내는 것이 더 유용합니다. 그러나 문제의 성격으로 인해 귀하의 브라우저가 예상대로 작동할 수 있음을 설명하기 위해 상황을 조사했습니다.
추론: 나의 전 갈리시아 멘토 중 한 명이 항상 말했듯이, 도구를 갖는 중요한 부분은 실수하기 전에 도구가 어떻게 작동하는지 이해하는 것입니다.