programing

Wordpress permalink 구조 변경 문제

showcode 2023. 3. 16. 22:00
반응형

Wordpress permalink 구조 변경 문제

이 문제에 관한 SO의 다른 게시물을 본 적이 있습니다만, 추천하는 솔루션 중 어느 것도 효과가 없었기 때문에 다시 게시합니다.

를 'Permalink '/%postname%/하지 않습니다 , , 어링링링 , , , , , , , , , , , , 。404번으로 하다

Not Found

The requested URL /my-post-name/ was not found on this server.

Apache/2.2.20 (Ubuntu) Server at mysite.com Port 80

default하지만 permalink를 하고 싶다./%postname%/을 사용하다

★★★.htaccess의 ★★★chmod17입니다.

를 내내로 한 후/%postname%/ , . . . . . . . ..htaccess워드프레스

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

무슨 생각 있어?

편집:

퍼머링크 구조를 다음과 같이 변경하려고 했습니다.

/index.php/%postname%/

잘 먹혔어요단, 현시점에서는 당연히 링크가 다음과 같은 형태로 되어 있습니다.

www.mysite.com/index.php/my-page.com

만, 어떻게 하면 요?index.php했을 구조에서 제거했을 때)/%postname%/링크가 작동하지 않게 되었습니다.

추신: 블로그 엔트리를 사용하는 대신 사이트 내 페이지만 사용합니다.필요한 경우 제 사이트는 mll.sehir.edu.tr 입니다.

문제의 근원을 알고 있다면 이 문제를 해결할 수 있는 방법은 여러 가지가 있습니다.

문제 1

먼저 mod_rewrite.c 모듈이 설치되어 있지 않거나 활성화 되어 있지 않은 Apache의 문제가 있을 수 있습니다.

이 때문에, 다음과 같이 유효하게 할 수 있습니다.

콘솔을 열고 다음과 같이 입력합니다.

sudo a2enmod rewrite

Apache 서버를 재시작합니다.

service apache2 restart

문제 2

에 가세하고,는, ( 「 」, 「 」, 「 」, 「 apache conf 「 」의 어느쪽인가)로부터 오버라이드 경우도 .apache2.conf,http.conf , 「」000-default을 클릭합니다.

확인Directory /var/www/

변경합니다.Override None로로 합니다.Override All

문제 3

rewrite module not found라는 오류가 표시되면 userdir 모듈이 활성화되지 않았을 수 있습니다.이 때문에, 유효하게 할 필요가 있습니다.

콘솔에 다음과 같이 입력합니다.

sudo a2enmod userdir

그런 다음 (위에서 설명한 바와 같이) 아직 활성화되지 않은 경우 다시 쓰기 모듈을 활성화해 보십시오.

상세한 것에 대하여는, 다음의 사이트를 참조해 주세요.

서버의 심볼링크에 문제가 있는 것 같습니다..htaccess에서 이것을 시도해 보고 변경한 후 644로 변경해 주세요.

Options +FollowSymlinks
RewriteEngine on

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

저도 같은 문제가 있었습니다만, 다른 URL 구조 /%category%/%postname%/를 사용하고 있습니다.

de 404 오류의 문제는 특정 구조를 설정해도 워드프레스가 항상 URL에 "category"라는 단어를 사용하여 URL을 작성하려고 하기 때문입니다.

다음과 같이 URL을 입력해 보십시오.yoursite.com/category/postname, 에러가 발생하지 않는 경우는, 에러의 해결에 가까워지고 있기 때문입니다.이제 이 워드프레스 플러그인 http://wordpress.org/extend/plugins/no-category-base-wpml/을 설치하여 URL에서 "카테고리" 베이스를 제거해 보십시오.

진행 상황을 알려주세요.

.htaccess를 다음과 같이 치환하여 사용해 보십시오.

옵션 + 팔로우 심링크

Rewrite Engine On(엔진 변경 켜기)

RewriteCond %{HTTP_HOST}^hostname.com$

RewriteRule ^(.*)$ http://www.hostname.com/$1 [R=영구, L]

사이트의 퍼머링크를 mod_rewrite로 활성화하려고 할 때마다 "Pretty Permalinks"라는 문제가 발생합니다.내 사이트는 AWS EC2의 한 인스턴스입니다.

404 Errors 

Page Not Found
The requested URL .... was not found on this server.
Apache/2.4.7 (Ubuntu) Server at mydomain.com Port 80

나는 위의 방법을 모두 시도해 보았지만 고쳐지지 않았다.

마지막으로 /etc/apache2/sites-available/wordpress.conf를 확인해보니 AWS가 각 인스턴스에 할당한 퍼블릭 IP 주소를 사용하고 있었습니다.현재 mydomain.com으로 변경하면 동작합니다.

wordpress.conf는 httpd(web serser)에 의해 잠길 수 있습니다.편집 후 wordpress.conf를 중지하고 시작해야 합니다.wordpress.conf가 다시 로드될 수 있도록 sudo service apache2 stop/start를 사용해야 합니다.

제 경험이 다른 사람들에게 도움이 되었으면 좋겠어요.

언급URL : https://stackoverflow.com/questions/12951357/wordpress-permalink-structure-change-issue

반응형