제목 | CI4에서 URL 주소에 index.php 보이지 않게할 경우 오류가 발생합니다. | ||
---|---|---|---|
카테고리 | CI 4 관련 | ||
글쓴이 | 김영성 | 작성시각 | 2023/01/26 14:48:30 |
|
|||
안녕하세요. CI4에서 URL 주소에 index.php 보이지 않게 설정하였는데 오류가 발생합니다. app.php 파일에서 public $indexPage = ''; 설정을 수정했습니다. 링크 주소에서는 index.php가 빠지는데 오류가 나고 있습니다. URL 주소는 http://domain.net/ProductList 나오고 있으나 "404 Not Found" 오류가 납니다. "The requested URL /ProductList was not found on this server." public/.htaccess 파일은 아래와 같이 되어 있습니다. ============================================================================ # Disable directory browsing Options All -Indexes # ---------------------------------------------------------------------- # Rewrite engine # ---------------------------------------------------------------------- # Turning on the rewrite engine is necessary for the following rules and features. # FollowSymLinks must be enabled for this to work. <IfModule mod_rewrite.c> Options +FollowSymlinks RewriteEngine On # If you installed CodeIgniter in a subfolder, you will need to # change the following line to match the subfolder you need. # http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritebase # RewriteBase / # Redirect Trailing Slashes... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} (.+)/$ RewriteRule ^ %1 [L,R=301] # Rewrite "www.example.com -> example.com" RewriteCond %{HTTPS} !=on RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L] # Checks to see if the user is attempting to access a valid file, # such as an image or css document, if this isn't true it sends the # request to the front controller, index.php RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([\s\S]*)$ index.php/$1 [L] # Ensure Authorization header is passed along RewriteCond %{HTTP:Authorization} . RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] </IfModule> <IfModule !mod_rewrite.c> # If we don't have mod_rewrite installed, all 404's # can be sent to index.php, and everything works as normal. ErrorDocument 404 index.php </IfModule> # Disable server signature start ServerSignature Off # Disable server signature end =============================================================================== app.php 파일 외에 어느 부분을 수정을 해야 URL에 index.php가 빠지고 정상적으로 링크가 되는지 고수님들의 답변 부탁 드립니다. 감사합니다. |
|||
다음글 | Windows Server에 CodeIgniter4 설... (2) | ||
이전글 | curl header content-type 변경이 안... (2) | ||
테러보이
/
2023/01/26 15:21:56 /
추천
0
|
김영성
/
2023/01/26 15:24:13 /
추천
0
Routes.php 파일에 위 주석 풀려 있습니다. $routes->setDefaultNamespace('App\Controllers');
$routes->setDefaultController('Home');
$routes->setDefaultMethod('index');
$routes->setTranslateURIDashes(false);
$routes->set404Override();
$routes->setAutoRoute(true);
|
테러보이
/
2023/01/26 15:57:59 /
추천
0
아파치 인지 확인 하고 rewrite가 켜져있는지 체크하세요
|
김영성
/
2023/01/26 15:59:14 /
추천
0
아파치 서버 웹호스팅 받고 있습니다. 호스팅 업체에서는 문제가 없으며 ci4에서 설정만 해 주면 된다고 답변 받았습니다. |
테러보이
/
2023/01/26 16:18:42 /
추천
0
|
김영성
/
2023/01/26 16:28:03 /
추천
0
http://ollehshop.net/public/404.png ci 404는 아닌거 같습니다. /App/Controllers/Product/ProductListController.php 파일 있습니다. routes에서 설정한 경로입니다. $routes->get('ProductList', 'ProductListController::index', ['namespace' => 'App\Controllers\Product']);
|
테러보이
/
2023/01/26 16:58:29 /
추천
0
.htaccess 가 적용이 안되고있는듯한데... |
김영성
/
2023/01/26 16:59:48 /
추천
0
.htaccess 적용이 되고 있는지 여부는 어떻게 확인이 가능할까요?
|
테러보이
/
2023/01/26 17:13:37 /
추천
0
phpinfo 찍어서
RewriteEngine on 으로 되있는지 보시겠어요? |
김영성
/
2023/01/26 17:21:58 /
추천
0
RewriteEngine 관련 내용이 없습니다.
|
테러보이
/
2023/01/26 17:24:00 /
추천
0
호스팅 업체에 한번 문의 해보시는게 좋을듯합니다. .htaccess 가 작동안된다고 하시면됩니다. |
김영성
/
2023/01/26 17:30:05 /
추천
0
네 감사합니다.
|
app/Config/Routes.php
주석이 풀어져있는지 체크해보세요