특정 경로에서 404 받기/Apache 서버 가격

특정 경로에서 404 받기/Apache 서버 가격

Ubuntu 20.04에 Apache 서버를 설정했습니다.

홈 페이지를 먼저 로드하면 사이트가 제대로 로드됩니다(https://leadzilla.ai) 그 후 가격 버튼을 클릭하면 다음 페이지로 이동합니다.https://leadzilla.ai/pricing해당 페이지도 잘 로드됩니다.

그런데 직접 가보니https://leadzilla.ai/pricing브라우저에 404가 표시됩니다.

여기에 내가 가진 것이 있습니다/etc/apache2/sites-available/leadzilla.ai.conf

<VirtualHost *:80>
    DocumentRoot /var/www/leadzilla.ai
    ServerName leadzilla.ai
    ServerAlias www.leadzilla.ai

    <Directory /var/www/leadzilla.ai>
        Options Indexes FollowSymLinks
        AllowOverride all
        Order Deny,Allow
        Allow from all
    </Directory>

RewriteEngine on
RewriteCond %{SERVER_NAME} =leadzilla.ai [OR]
RewriteCond %{SERVER_NAME} =www.leadzilla.ai
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

이 구성이 있습니다/etc/apache2/sites-available/leadzilla.ai-le-ssl.conf

<IfModule mod_ssl.c>
<VirtualHost *:443>
    DocumentRoot /var/www/leadzilla.ai
    ServerName leadzilla.ai
    ServerAlias www.leadzilla.ai

    <Directory /var/www/leadzilla.ai>
        Options Indexes FollowSymLinks
        AllowOverride all
        Order Deny,Allow
        Allow from all
        #Deny from all
        #Allow from 127.0.0.1
        #Allow from ::1
    </Directory>
    <Directory /var/www/leadzilla.ai/blog>
        AllowOverride All
    </Directory>

Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/leadzilla.ai/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/leadzilla.ai/privkey.pem
</VirtualHost>
</IfModule>

나는 워드프레스를 사용하고 있다https://leadzilla.ai/blog그래서 그것도 처리해야합니다.

내가 시도한 것은 다음과 같습니다. RewriteRule ^pricing$ pricing.html [NC]

다른 다시 쓰기 규칙 앞에 추가했지만 작동하지 않는 것 같습니다. 어떤 아이디어가 있나요?

[편집하다]

이제 이 문제가 해결되었습니다. 문제는 Apache 구성이 아닌 Next.js 구성이었습니다.

exportTrailingSlash: true나는 내 것을 넣었고 module.exports효과가 있었다

답변1

나는 이것이 호기심 많은 행동이라고 생각합니다. 하지만 RewriteRule에 a가 있으면 <VirtualHost *:443>도 있어야 합니다 RewriteEngine On.

디렉토리에 심볼릭 링크가 있습니까? 같은 것 foo -> foo.html?

디렉토리 구조에 /var/www/html/pricing/과 같은 디렉토리가 있습니까?

또한 모든 트래픽이 HTTPS로 종료된다는 점을 기억하세요. 이는 HTTPS만 <VirtualHost *:443>작동한다는 의미입니다. 다른 가상 호스트 항목은 HTTP에서 HTTPS로 리디렉션될 만큼 오랫동안 사용됩니다. :80 VirtualHost에 대한 재작성 규칙은 HTTPS에 적용되지 않습니다.

관련 정보