Codeigniter-지정된 입력 파일 없음
안녕하세요 저는 Codeigniter의 초보자이고 CI 튜토리얼을보고 간단한 작업을하려고했습니다. CI를 다운로드하고이 파일을 컨트롤러 디렉터리에 추가했지만 작동하지 않습니다.
<?php
class site extends CI_Controller
{
public function index()
{
echo "Hello World";
}
function dosomething()
{
echo "Do Something";
}
}
?>
http : //..../index.php/site를 사용하여 액세스하려고 하면 출력이 표시됩니다 ... "지정된 입력 파일 없음".... 그런데 파일 이름을 site.php로 지정했습니다.
그냥 ? .htaccess 파일에서 index.php 뒤에 서명하십시오.
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
그리고 그것은 작동 할 것입니다!
GoDaddy이은에 고정 된 것 같다 호스팅 .htaccess
자신이 노력하고,
RewriteRule ^(.*)$ index.php/$1 [L]
에
RewriteRule ^(.*)$ index.php?/$1 [QSA,L]
이 질문에 대한 답을 여기서 찾았습니다 ..... 문제는 호스팅 서버였습니다 ... 시도해 주신 모든 분들께 감사드립니다. .... 이것이 다른 사람들에게 도움이되기를 바랍니다.
CodeIgniter 앱의 .htaccess 파일에있는 RewriteEngine, DirectoryIndex
방금 .htaccess 파일 내용을 변경했으며 다음 링크에 표시된대로 대답했습니다. 그리고 페이지를 새로 고치려고 시도했습니다 (작동하지 않았고 컨트롤러에 대한 요청을 찾을 수 없음).
그런 다음 내 의심 때문에 public_html 폴더 내의 .htaccess에 대한 변경 사항 을 원래 .htaccess 콘텐츠로 되돌 렸습니다 . 이제 다음과 같습니다 (원래 그대로입니다).
DirectoryIndex index.php
RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php?/$1 [L,QSA]
그리고 지금도 작동합니다.
힌트 : 재 작성 규칙이 서버 컨텍스트 내에서 명확하게 설정되지 않은 이전과 같습니다.
내 파일 구조는 다음과 같습니다.
/
|- gheapp
| |- application
| L- system
|
|- public_html
| |- .htaccess
| L- index.php
그리고에서 index.php
시스템 및 응용 프로그램에 대한 다음 경로를 설정했습니다.
$system_path = '../gheapp/system';
$application_folder = '../gheapp/application';
Note: by doing so, our application source code becomes hidden to the public at first.
Please, if you guys find anything wrong with my answer, comment and re-correct me!
Hope beginners would find this answer helpful.
Thanks!
My site is hosted on MochaHost, i had a tough time to setup the .htaccess file so that i can remove the index.php from my urls. However, after some googling, i combined the answer on this thread and other answers. My final working .htaccess file has the following contents:
<IfModule mod_rewrite.c>
# Turn on URL rewriting
RewriteEngine On
# If your website begins from a folder e.g localhost/my_project then
# you have to change it to: RewriteBase /my_project/
# If your site begins from the root e.g. example.local/ then
# let it as it is
RewriteBase /
# Protect application and system files from being viewed when the index.php is missing
RewriteCond $1 ^(application|system|private|logs)
# Rewrite to index.php/access_denied/URL
RewriteRule ^(.*)$ index.php/access_denied/$1 [PT,L]
# Allow these directories and files to be displayed directly:
RewriteCond $1 ^(index\.php|robots\.txt|favicon\.ico|public|app_upload|assets|css|js|images)
# No rewriting
RewriteRule ^(.*)$ - [PT,L]
# Rewrite to index.php/URL
RewriteRule ^(.*)$ index.php?/$1 [PT,L]
</IfModule>
참고URL : https://stackoverflow.com/questions/6118740/codeigniter-no-input-file-specified
'programing' 카테고리의 다른 글
UIStatusBarStyle이 Swift에서 작동하지 않습니다. (0) | 2020.09.17 |
---|---|
숫자를 가장 가까운 10으로 반올림하는 방법은 무엇입니까? (0) | 2020.09.17 |
알파벳 문자 배열 생성 (0) | 2020.09.17 |
Xcode 프로젝트에 시뮬레이터 목록이 표시되지 않음 (0) | 2020.09.17 |
AngularJs에서 X 번만 반복 ng-repeat (0) | 2020.09.17 |