티스토리 뷰
윈도우 컴터에 ...그 오래된 오토셋으로 웹사이트를 하나 운영중인데 하나더 붙여서 사용하려고 하는데
특이한 현상이 발생했다. 2개다 그누보드5 사이트이다.
특정 url의 주소에 관해서 500 Internal Server Error 에러가 발생한다.
이상한 점은
a.com/theme/basic/img/1.jpg 이런 위치는 정상적으로 작동하는데
a.com/bbs~ , a.com/data~ 이런 폴더에 이미지들은 주소를 직접 입력해도 url이 500 에러로 돌아온다.
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator at asdf2sd2@doc.xo.kr to inform them of the time this error occurred, and the actions you performed just before this error.
More information about this error may be available in the server error log.

.htaccess 관련 문제인가? httpd-vhosts.conf 문제인가 현재 계속 파악중인데 우선은 .htaccess를 다 지운 상태로 해도 동일하고 httpd-vhosts.conf에서 디렉토리 설정을 전체로 잡지 않고 각각 별도로도 해보았다.
주의할것은 documentRoot 은 / 이지만 Directory에서는 \ 이다
# httpd-vhosts.conf
<VirtualHost *:80>
ServerAlias 127.0.0.1
ServerName localhost
ServerAdmin asdf2sd2@doc.xo.kr
DocumentRoot "C:/AutoSet10/b"
<Directory />
Options FollowSymLinks
AllowOverride FileInfo
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAlias a.kr
ServerName a.kr
ServerAdmin asdf2sd2@doc.xo.kr
DocumentRoot "C:/AutoSet10/aa"
<Directory "C:\AutoSet10\a">
Options FollowSymLinks
AllowOverride FileInfo
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAlias b.kr
ServerName b.kr
ServerAdmin asdf2sd2@doc.xo.kr
DocumentRoot "C:/AutoSet10/b"
<Directory "C:\AutoSet10\a">
Options FollowSymLinks
AllowOverride FileInfo
Require all granted
</Directory>
</VirtualHost>
여러 개의 아파치 가상 호스트를 사용할 때 발생할 수 있는 파일 에러에는 다양한 경우가 있습니다. 여기에는 가상 호스트 설정, 파일 권한, 디렉토리 구조 등 다양한 요소가 영향을 미칠 수 있습니다. 몇 가지 일반적인 사례를 살펴보겠습니다:
DocumentRoot 경로 충돌: 두 개의 가상 호스트가 동일한 DocumentRoot 경로를 가지고 있다면 파일 충돌이 발생할 수 있습니다. 예를 들어, 두 가상 호스트 모두 같은 경로에 index.html 파일을 가지고 있을 경우 충돌이 발생할 수 있습니다.
권한 문제: 가상 호스트의 DocumentRoot에 대한 파일 및 디렉토리 권한이 제대로 설정되지 않은 경우 파일에 액세스할 수 없는 문제가 발생할 수 있습니다. 이는 Apache 사용자나 그룹이 파일에 대한 쓰기 및 읽기 권한을 가지고 있지 않은 경우에 발생할 수 있습니다.
디렉토리 구조 충돌: 두 개의 가상 호스트가 서로 다른 디렉토리 구조를 가지고 있다면, 파일이 실제로 존재하지 않거나 올바른 경로에 위치하지 않는 경우에 발생할 수 있습니다. 이는 파일이 올바른 위치에 있는지 확인하고, 가상 호스트의 설정이 실제 파일 위치와 일치하는지 확인하여 해결할 수 있습니다.
.htaccess 파일 충돌: 두 개의 가상 호스트가 같은 디렉토리에 .htaccess 파일을 가지고 있다면, 파일 권한이나 액세스 제어와 관련된 충돌이 발생할 수 있습니다. 이 경우 각각의 가상 호스트에 대한 .htaccess 파일을 확인하고, 충돌을 방지하기 위해 필요한 조치를 취할 수 있습니다.
캐싱 문제: 서로 다른 가상 호스트에서 같은 파일을 요청할 경우 캐싱 문제가 발생할 수 있습니다. 이 경우 브라우저 캐시를 지우거나, 서버 측 캐시를 관리하여 해결할 수 있습니다.
이러한 사례들을 고려하여 아파치 가상 호스트를 설정할 때 파일 에러를 방지할 수 있습니다. 파일 에러가 발생하는 경우 이러한 사례들을 참고하여 문제를 해결할 수 있습니다.
라고 ChatGpt에서 검색해봤는데 진짜로 답이 안나온다.
결국은.. 노가다 검색으로 해결했는데 그누보드 사이트 https://sir.kr/qa/184110 에 가서 찾아냈는데
.htaccess 엑박 관련 질문 > SIR
안녕하세요.data 디렉토리에 .htaccess 파일이 있고 내용은 아래와 같습니다. <FilesMatch "\.(htaccess|htpasswd|[Pp][Hh][Pp]|[Pp]?[Hh][Tt][Mm][Ll]?|[Ii][Nn][Cc]|[Cc][Gg][Ii]|[Pp][Ll])">Order allow,denyDeny from all</FilesMatch> 위
sir.kr
AllowOverride FileInfo -> AllowOverride ALL
httpd-vhosts.conf 파일에서 문제가 생기는 호스트의 내용만 수정하면된다.
FileInfo 만 All로 바꾸주세요
아래는 이거에 관련 설명 `AllowOverride` 디렉티브는 Apache 웹 서버가 `.htaccess` 파일에서 어떤 종류의 지시문을 허용하는지를 지정합니다. 이 디렉티브를 설정하여 `.htaccess` 파일이나 디렉토리별 설정 파일에서 어떤 설정을 사용할 수 있는지를 결정합니다.
`AllowOverride FileInfo`에서 `AllowOverride ALL`로 변경하면 이미지가 보이는 이유에 대해 자세히 설명하겠습니다.
1. **`.htaccess` 파일의 역할**:
- Apache 웹 서버는 `.htaccess` 파일을 사용하여 디렉터리별로 웹 서버의 동작을 변경하거나 제어할 수 있습니다.
- `AllowOverride` 디렉티브는 `.htaccess` 파일에서 어떤 종류의 지시문을 허용할지 결정합니다.
2. **`AllowOverride FileInfo` vs. `AllowOverride ALL`**:
- `AllowOverride FileInfo`는 `.htaccess` 파일에서 파일 및 디렉토리의 액세스 권한을 제어하는데 사용되는 `FileInfo` 지시문만을 허용합니다.
- 반면에 `AllowOverride ALL`은 모든 종류의 `.htaccess` 설정을 허용합니다. 따라서 이미지가 보이지 않는 문제를 해결하기 위해서는 `ALL`로 변경하는 것이 적절합니다.
3. **액세스 권한 설정**:
- 이미지가 보이지 않는 주요 이유 중 하나는 액세스 권한 설정입니다. 기본적으로 Apache는 특정 디렉토리에 있는 파일에 대한 액세스를 제한합니다. 이 때문에 `.htaccess` 파일을 사용하여 액세스 권한을 변경할 수 있습니다.
- `FileInfo` 지시문을 사용하여 `.htaccess` 파일에서 액세스 권한을 설정할 수 있습니다. 그러나 `ALL`을 설정하면 더 많은 설정을 변경할 수 있으므로 액세스 권한 설정 외에도 다른 설정을 변경할 수 있습니다.
4. **기타 설정 변경**:
- `AllowOverride ALL`로 설정하면 파일 액세스 권한 설정뿐만 아니라 다른 설정도 변경할 수 있습니다. 예를 들어, 이미지 파일의 캐싱 헤더를 추가하거나, 디렉토리 리스트를 표시하는 기능을 비활성화할 수 있습니다.
5. **보안 고려 사항**:
- `AllowOverride ALL`은 더 많은 설정을 허용하지만, 보안 상의 이유로 가능한한 제한적인 설정을 사용하는 것이 권장됩니다. 불필요한 설정을 허용하면 보안 취약점이 발생할 수 있습니다.
- 따라서 실제로 필요한 설정만을 허용하고, 나머지는 제한하는 것이 좋습니다.
요약하면, `AllowOverride ALL`로 설정하면 `.htaccess` 파일에서 더 많은 설정을 변경할 수 있으므로 액세스 권한 설정 외에도 다른 설정을 변경할 수 있습니다. 이를 통해 이미지가 보이지 않는 문제를 해결할 수 있습니다. 그러나 보안을 고려하여 실제로 필요한 설정만을 허용하는 것이 중요합니다.
'웹 > 그누보드' 카테고리의 다른 글
윈도우로 그누보드 서버 공유기 apache , autoset 등에서 curl 에러 (0) | 2024.05.01 |
---|---|
그누보드5 개인정보 없이 회원가입 이메일 사용안함 (1) | 2024.04.29 |
그누보드에서 봇 차단하는 방법 (1) | 2024.04.27 |
그누보드6 윈도우에 설치 및 재설정 mysql 설치 오류 해결 (0) | 2024.04.22 |
텔레그램 주문 알림 (2) | 2024.01.12 |
- Total
- Today
- Yesterday
- 유튜브
- 그누보드5
- Fullcalendar
- 텔레그램
- lsposed
- 아파치
- Magisk
- xe
- 파이선
- Cloudflare
- SSL
- php
- 텔레그램봇
- 멀티계정
- 에러
- Apache
- 루팅
- 아미나
- 당근
- 그누보드
- 파이썬
- .htaccess
- 오토셋
- 클라우드플레어
- 윈도우
- 셀레니움
- 제로보드
- python
- php8
- 회원가입
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |