반응형

ubuntu 14.04 에서 apache2 위에 php 코드이그나이터 프로젝트를 올렸는데, 


index.php가 없어지지 않는 문제가 발생했다.


기본적으로 코드이그나이터 쪽 셋팅은 한 상태이며, 로컬에서는 문제가 없었다. 

http://nahosung.tistory.com/23 - 코드이그나이터 셋팅 한 글 )


codeigniter 에서 설정하는 부분은 위에 링크해놓은 글에서 보고 설정하면 됩니다.


첫번째로 apache2의 mod_rewrite 를 활성화 하기 위해서 아래의 명령어를 실행합니다.

 

sudo a2enmod rewrite


그리고 apache를 재실행 합니다.


sudo service apache2 restart


( 다른 ubuntu에서 설정할때는 이것만으로 설정이 끝났습니다. )


두번째로 000-default.conf 파일을 열어 수정 하도록 합니다.

( vi /etc/apache2/sites-available/000-default.conf  )


다른 글들을 검색해 봤을때 아래와 같은 내용이 존재하며, 


<Directory "/var/www/html"> AllowOverride None </Directory>

(일부분 내용이며, 더 길게 내용이 있을수도있습니다. 저부분만 확인하면됩니다. )


AllowOverride None -> AllowOverride All


None을 All로 수정합니다.


저는 다른 글들과 다르게 저러한 내용이 없었기 때문에, 


DocumentRoot /var/www/html  부분 아래에 다음과 같은 내용을 넣고 저장했습니다.


<Directory "/var/www/html"> AllowOverride All </Directory>


그리고 아파치를 재시작하니 index.php가 사라진 것이 적용 됐습니다.


sudo service apache2 restart

반응형
반응형

(

파일 업로드 실패하는데 어떤 오류인지 모르는 경우는 

위와 같이 화면에 오류를 확인하여 어떤 오류인지 먼저 파악해야한다.

)


코드이그나이터 파일 업로드 중에 아래와 같은 오류가 발생했다.


The filetype you are attempting to upload is not allowed '




위와 같이 config에 넣어준 파일종류에서도 오류가 발생했다.

우선 에러가 나는 파일 업로드 소스 뒤에 

$this->upload->do_upload( "file" ) 

print_r($_FILES);


을 사용하여 파일의 type을 확인해야 한다.


화면에 [type] => application/octet-stream 와 같이 출력이 될것이다.


그럼 config/mimes.php 파일을 열어


오류가 나는 파일 종류의 뒤에 위에서 찾은 type의 값을 추가 해 준다.  



위와같은 방식으로 추가한 후 다시 파일을 업로드 해보면 파일이 정상적으로 업로드 된다.

반응형
반응형


ci에서 email 전송시에 제목의 문자가(한글) 깨지는 현상이 나타났다.

(네이버,네이트 등등... 다른메일은 괜찮은데 gmail에서만 발생)


다른 사람들도 문제가 생긴적이 있긴 한 것 같은데 

정확한 원인은 모르겠짐만 아래와 같이 수정하여 해결


system/libraries/Email.php 파일을 아래와 같이 수정


/**

* Set Email Subject

*

* @access public

* @param string

* @return void

*/

public function subject($subject)

{

$subject='=?UTF-8?B?' . base64_encode ( $subject ) . '?=';

//$subject = $this->_prep_q_encoding($subject);

$this->_set_header('Subject', $subject);

return $this;

}


<textarea name="code" class="brush:php;"> 


$subject = $this->_prep_q_encoding($subject);

->

$subject='=?UTF-8?B?' . base64_encode ( $subject ) . '?=';


반응형
반응형

워드 프레스를 설치하는 방법은 간단하다. 

워드프레스 사이트에 접속하여 압축파일을 다운 받은 후 

서버의 경로에 압축 파일을 올려주면된다.


(여기서는 'apmsetup'을 사용하였으며, 'apmsetup' 설치 경로 아래에 'htdocs'아래에 압축을 해제 하였습니다.)

(이 글은 apmsetup 설치 과정 및 DB생성 과정은 포함되어 있지 않습니다.)


https://ko.wordpress.org/



http://127.0.0.1 로 접속 하여  아래와 같은 화면이 나오면 설치가 완료된 것이다.


다음으로 Let' go! 버튼을 클릭하여 다음 단계로 데이터베이스 세팅을 해주면된다.



기본적으로 위와 같은 기본 값이 들어 있으며, 자신의 상황에 맞게 지정하여 저장하기를 눌러주면된다.

(위의 설정을 하기 위해서는 당연히 DB를 먼저 생성해주어야 하며, apmsetup의 환경에서는

 http://127.0.0.1/myadmin  으로 접속하여 DB생성이 가능하다.)




설치 실행하기 버튼 클릭



위의 과정들은 추후에 변경이 가능하다고 하니, 작성 후에 워드 프레스 설치하기를 클릭한다.



위와 같은 화면이 나오며, 로그인을 클릭하면 아래와 같은 화면이 나온다




http://127.0.0.1/wp-login.php 를 통해 관리자 페이지로 접속이 가능하며, 

http://127.0.0.1/ 로 접속하면, 워드프레스로 만들어진 첫페이지 화면이 등장한다.

반응형
반응형


간단하게 보안문자를 이미지로 만들어 주는 php 소스


captcha.php 를 만들고, 

html 파일에서 img태그를 사용하여 captcha.php를 불러오면

해당 img태그 부분에 보안 문자 이미지가 등장한다.


http://99webtools.com/blog/php-simple-captcha-script/


사용방법은 위의 url에 나와있습니다.





반응형
반응형

apmsetup에서 phpmyadmin을 접속하는데 아래와 같은 오류 발생


Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly.



php.ini 파일 수정


session.auto_start = 0 부분을

session.auto_start = 1 로 수정 후 


아파치 재시작

반응형

'PHP' 카테고리의 다른 글

php 보안문자 captcha  (0) 2016.05.12
반응형

정상적으로 작동하다가 Disallowed Key Characters. 에러가 발생


검색해 보니 여러 이유가 있는듯 했음...


system - core - Input.php 파일을 수정하여 해결



function _clean_input_keys($str) 를 검색하여


preg_match("/^[a-z0-9:_\/-]+$/i", $str))   부분에 | 추가


preg_match("/^[a-z0-9:_\/-]+$|/i", $str))


반응형
반응형

An Error Was Encountered

In order to use the Session class you are required to set an encryption key in your config file.


ci를 사용하여 세션을 생성하려하는데 다음과 같은 에러가 발생하였다. 


application - config - config.php 파일의 아래와 같은 부분이 공백이기때문이다.


$config['encryption_key'] = '';


위의 내용을 채워주면 오류가 발생하지 않는다.

(아무 내용이나 적어도 상관없으면 긴것이 좋다)

반응형
반응형

application - config - config.php 파일 수정


//$config['base_url'] = '';

$config['base_url'] = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") ? "https" : "http");

$config['base_url'] .= "://" . $_SERVER['HTTP_HOST'];

$config['base_url'] .= str_replace(basename($_SERVER['SCRIPT_NAME']), "", $_SERVER['SCRIPT_NAME']);


//$config['index_page'] = 'index.php';
$config['index_page'] = '';

.htaccess 파일 수정 (이 파일은 index.php 와 같은 경로에 존재해야 하며, 없을경우 생성해주면된다.)

-index.php 파일이 최상위 경로에 있는경우
<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteBase /
 RewriteCond $1 !^(index\.php|images|captcha|data|include|uploads|js|robots\.txt)
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ /index.php/$1 [L]
</IfModule>

-index.php 파일이 하위 폴더 경로에 있는경우 (이것을 찾지 못하여 시간이 좀 걸림)
<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteBase /
 RewriteCond $1 !^(index\.php|images|captcha|data|include|uploads|js|robots\.txt)
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ 폴더경로/index.php/$1 [L]
</IfModule>


반응형
반응형


https://ellislab.com/codeigniter/user-guide/installation/downloads.html

위의 사이트에서 코드이그나이터를 다운 받는다.


다운받은 압축 파일을 풀어 준다.


이클립스에서 php 프로젝트를 생성한 공간에 코드이그나이터 압축파일을 복사 붙여넣기 해준다.


위와 같은 화면이 나오면 정상적으로 연동이 된 것 입니다.

반응형

+ Recent posts