사용자 정의 .htaccess 파일을 사용하는 가상 호스트에서 오류 404 발생
P粉729198207
P粉729198207 2023-09-05 10:28:49
0
2
693
<p>로컬 Linux 서버에 apache2를 설치했습니다. 여기에는 <code>pcts.local</code>라는 가상 호스트가 있으며 루트 디렉터리는 <code>/var/www/repos/pcts/</code>입니다. pcts.local의 루트에는 다음과 같이 지정되지 않은 경우 .php를 포함하도록 URL을 다시 작성하려고 시도하는 .htaccess 파일이 있습니다. </p> <pre class="brush:php;toolbar:false;">http://pcts.local/ -> http://pcts.local/index.php http://pcts.local/contact -> http://pcts.local/contact.php</pre> <p>문제는 <code>http://pcts.local/contact</code>에서 오류 404가 발생하지만 <code>http://pcts.local/contact.php</code> 200개 중. </p> <h3>가상 호스트 구성: </h3> <pre class="brush:php;toolbar:false;"><VirtualHost *:80> 서버 이름 pcts.local ServerAdmin webmaster@localhost DocumentRoot /var/www/repos/pcts 오류 로그 ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log 결합 </VirtualHost></pre> <h3>.htaccess 파일은 <code>/var/www/repos/pcts/</code></h3>에 있습니다. <pre class="brush:php;toolbar:false;">RewriteEngine 켜기 RewriteBase/ RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}.php -f RewriteRule ^(.+)$ $1.php [NC,L]</pre> <p>도움을 주셔서 미리 감사드립니다! </p>
P粉729198207
P粉729198207

모든 응답(2)
P粉151720173

코드에서 REQUEST_FILENAME에 재작성을 수행하려면 PHP 확장자를 가진 파일이 필요합니다.

이것을 시도해 보세요:

으아악
P粉009828788

이것이 전체 구성인 경우 .htaccess 파일이 처리되지 않습니다.

특정 디렉터리에 대한 재정의를 활성화 .htaccess 覆盖。 (即,您尚未启用 .htaccess 文件的解析。)默认情况下,.htaccess하지 않았습니다. (즉,

파일 구문 분석을 활성화하지 않았습니다.) 기본적으로

재정의는 비활성화되어 있습니다.

그런데 파일 시스템의 이 영역에도 액세스를 허용하지 않으셨나요? 서버 구성의 다른 곳에서 이 작업을 수행했습니까? ! 容器内有一个相关的

다음과 같이

섹션에 있어야 합니다. .htaccess 으아악

필요한 경우

재정의를 추가로 제한할 수 있습니다(아래 참조 링크 참조)

    참조:
  • https://httpd.apache.org/docs/2.4 /mod/core.html#allowoverride
🎜 🎜
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿