안녕하세요.

서버를 새로 설치하고 Xe를 설치하는데 셋팅에 문제가 생겨서 질문드립니다.

 

우선 제 환경은요.

 

OS: 우분투 서버 16.04 에 xe 1.8.21 

Nginx: 1.11.1

MariaDB: 10.1.14 

PHP: 7.0.7

 

이렇습니다.

 

Xe는  /usr/share/nginx/html/xe/

 

이렇게 넣어놨습니다.

 

웹브라우져에서 http://192.168.0.100/xe

 

이렇게 하면 화면은 뜨는데요.

 

xe설치중간에 rewrite 설정이 안되어있다고 설정해야된다고 나오길래

 

링크따라가서 파일을 작성해서(xe_rewrite.conf)

 

/etc/nginx/conf.d/xe_rewrite.conf 위치했습니다.

 

그래도 rewrite 설정이 안되었다고 계속 나오는데요 

 

rewrite설정파일에 경로명을 정확하게 안적어줬는지 어떻게 된건지 잘 모르겠습니다.

(제가 코드를 잘 몰라서요.)

 

아래 내용중에 어떻게 수정하면될지 궁금합니다.

 

감사합니다.^^

 

 

해당 내용 입니다.

 

————————————————— xe_rewrite.conf ————————————————————————————————

# reserve XE Layout Template Source File (*.html)

rewrite ^/(layouts|m.layouts)/(.+)/(.+).html$ /index.php last;

 

# conf, query, schema

rewrite ^/(modules|addons|widgets)/(.+)/(conf|queries|schemas)/(.+).xml$ /index.php last;

 

# static files

rewrite ^/(.+)/files/(member_extra_info|attach|cache|faceOff)/(.*) /files/$2/$3 last;

rewrite ^/(.+)/(files|modules|widgets|widgetstyles|layouts|m.layouts|addons)/(.*) /$2/$3 last;

 

# rss, blogAPI

rewrite ^/(rss|atom)$ /index.php?module=rss&act=$1 last;

rewrite ^/([a-zA-Z0-9_]+)/(rss|atom|api)$ /index.php?mid=$1&act=$2 last;

rewrite ^/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/(rss|atom|api)$ /index.php?vid=$1&mid=$2&act=$3 last;

 

# trackback

rewrite ^/([0-9]+)/(.+)/trackback$ /index.php?document_srl=$1&key=$2&act=trackback last;

rewrite ^/([a-zA-Z0-9_]+)/([0-9]+)/(.+)/trackback$ /index.php?vid=$1&document_srl=$2&key=$3&act=trackback last;

 

# administrator page

rewrite ^/admin/?$ /index.php?module=admin last;

 

# document permanent link

rewrite ^/([0-9]+)$ /index.php?document_srl=$1 last;

 

# mid link

rewrite ^/([a-zA-Z0-9_]+)/?$ /index.php?mid=$1 last;

 

# mid + document link

rewrite ^/([a-zA-Z0-9_]+)/([0-9]+)$ /index.php?mid=$1&document_srl=$2 last;

 

# vid + mid link

rewrite ^/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/?$ /index.php?vid=$1&mid=$2 last;

 

# vid + mid + document link

rewrite ^/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)$ /index.php?vid=$1&mid=$2&document_srl=$3 last;

 

# mid + entry title

rewrite ^/([a-zA-Z0-9_]+)/entry/(.+)$ /index.php?mid=$1&entry=$2 last;

 

# vid + mid + entry title

rewrite ^/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/entry/(.+)$ /index.php?vid=$1&mid=$2&entry=$3 last;

—————————————————————————————————————————————————————————

  • profile
    /etc/nginx/ 에 xe_rewrite.conf 파일을 넣어두고
    site-available 폴더의 default파일에서 include xe_rewrite.conf; 하시면 될꺼에요.
  • profile ?
    site-available 폴더는 없습니다.
    /etc/nginx/conf.d/default.conf 파일이있구요. 이파일에서 수정을 했습니다.
    xe_rewrite.conf 파일은 /etc/nginx/xe_rewrite.conf 로 옮겼습니다만
    그대로 입니다. ㅜㅜ
  • ? profile

    전 apt-get으로 설치했더니 conf.d는 비어있고 site-available에서 설정을 하게되어있었어서...

     

    제 default 파일은 대충

    server {
        listen       80;
        server_name  default;
        root   /usr/share/nginx/html;
    
        include xe_rewrite.conf;
    
        location / {
            index  index.php index.html;
        }
    
        ....
    }

     

    이런식으로 했더니 xe_rewrite.conf 인식을 하고 있었거든요.

     

     

  • profile

    1. xe_rewrite 를 설정파일에서 include 하였나요? ( nginx/conf.d/default.conf or~ )

     

    2. nginx 재시작은 했나요?

  • profile ?
    네 /etc/nginx/conf.d/default.conf 파일내용입니다.


    server {
    listen 80;
    server_name www.xe.com;
    root /usr/share/nginx/html/;


    access_log /var/log/nginx/nginx.access.log;
    error_log /var/log/nginx/nginx.error.log warn;


    location / {
    index index.php index.html;
    }


    # Block dot file (.htaccess .htpasswd .svn .git .env and so on.)
    location ~ /\. {
    deny all;
    }


    location = /favicon.ico {
    log_not_found off;
    access_log off;
    }


    location = /robots.txt {
    allow all;
    log_not_found off;
    access_log off;
    }


    # Block .php file inside upload folder. uploads(wp), files(drupal, xe), data(gnuboard).
    location ~* /(?:uploads|files|data)/.*\.php$ {
    deny all;
    }


    # Add PHP handler
    location ~ [^/]\.php(/|$) {
    fastcgi_split_path_info ^(.+?\.php)(/.*)$;
    if (!-f $document_root$fastcgi_script_name) {
    return 404;
    }


    fastcgi_pass unix:/run/php/php-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;

    # xe rewrite
    include /etc/nginx/xe_rewrite.conf;
    }
    }


    조금씩 고치고 nginx restart 를 해봤는데도 여전히 안됩니다. ㅜㅜ
  • profile

    공식적으로 제공되는 xe_rewrite.conf 파일은 xe를 사이트 메인에 설치했을 때만 작동합니다. /xe 폴더에 설치하면 작동하지 않습니다.

     

    폴더에 설치했을 때도 작동하도록 하려면 라이믹스에서 제공하는 파일을 참고하여 수정해 주시면 됩니다.

  • profile profile
    아... 안되는거였구나..