mysql + .htaccess

Discussion in 'Песочница' started by Pirotexnik, 7 Apr 2012.

  1. Pirotexnik

    Pirotexnik Member

    Joined:
    13 Oct 2010
    Messages:
    376
    Likes Received:
    73
    Reputations:
    38
    Добрый день.
    Я вобщем, как обычно :)

    Суть такая:
    Есть root доступ к MySql на сервере с сайтом.
    Могу писать, читать и тд.
    Проблемма вот в чем.

    1) Все диры кроме /uploads - Error 13 (не хватает прав)
    2) В дире /uploads много подпапок.
    3) Из них нельзя запускать *.php (и подобные)
    4) Пытаюсь создать .htaccess
    5) такой .htaccess не помог.
    6) другое содержание
    Почему-то записалось так

    Есть идеи?
    Спасибо.
     
  2. Га-Ноцри

    Га-Ноцри Elder - Старейшина

    Joined:
    16 Oct 2011
    Messages:
    329
    Likes Received:
    177
    Reputations:
    76
    Меня иногда выручала подобная конструкция:

    PHP:
    php_flag engine on (либо php engine on)
    AddType application/x-httpd-php  .phtml .jpg .html
    AddHandler application
    /x-httpd-php .phtml .jpg .html
    А, ну и еще можно использовать PHP включения в .html файлах при помощи такого .htaccess

    PHP:
    RemoveHandler .html .htm 
    AddType application
    /x-httpd-php .php .htm .html .phtml
     
    #2 Га-Ноцри, 7 Apr 2012
    Last edited: 7 Apr 2012
  3. Pirotexnik

    Pirotexnik Member

    Joined:
    13 Oct 2010
    Messages:
    376
    Likes Received:
    73
    Reputations:
    38
    При записе НЕСКОЛЬКИХ строк появляются слэши.
    Нужно что-то, что будет работать в 1 строку. Либо как решить эту проблемму.
     
  4. Га-Ноцри

    Га-Ноцри Elder - Старейшина

    Joined:
    16 Oct 2011
    Messages:
    329
    Likes Received:
    177
    Reputations:
    76
    Записать в одну строку

    PHP:
    php_flag engine on
    и попробовать выполнить .php или .phtml
     
  5. Pirotexnik

    Pirotexnik Member

    Joined:
    13 Oct 2010
    Messages:
    376
    Likes Received:
    73
    Reputations:
    38
    php
    shtml
    Открывается, но не выполняется.
     
    #5 Pirotexnik, 8 Apr 2012
    Last edited: 8 Apr 2012
  6. Га-Ноцри

    Га-Ноцри Elder - Старейшина

    Joined:
    16 Oct 2011
    Messages:
    329
    Likes Received:
    177
    Reputations:
    76
    Ты будешь смеяться, но у меня буквально пару часов назад, один в один, была подобная ситуация - только вместо невозможности написать .htaccess в несколько строк, у меня просто выскакивала 500 ошибка при попытке записать php engine on. Боюсь, все дело в грамотно настроенном httpd.conf и/или корневом .htaccess. В итоге я плюнул на это дело и пошел за пивом.

    Так что, боюсь, на этом моя фантазия исчерпана и я не знаю, как помочь в твоем случае :)
     
    2 people like this.
  7. Pirotexnik

    Pirotexnik Member

    Joined:
    13 Oct 2010
    Messages:
    376
    Likes Received:
    73
    Reputations:
    38
    .htaccess перенастраивает свойства диры, в которой лежит, и всех вложенных.

    Похоже, прийдется забивать :(
     
  8. asiaman

    asiaman New Member

    Joined:
    4 Aug 2011
    Messages:
    27
    Likes Received:
    2
    Reputations:
    0
    а перл и др. скрипты могут выполниться? что на сервере есть? и какие модули апача стоят?

    если будешь забивать совсем. то можешь скинуть в личку, я пораскину мозгами. в замен тоже какой-нить шелл дам, если нужно.
    просто читать статьи - в одно ухо называется. без практики на завтра уже и не вспомню как да чего читал((

    да и ты когда-то про форум движок Дискуз статью писал. Я некоторые азиатские языки знаю. и тоже на некоторых азиатских бордах есть. так вот Дискуз - китайский двиг. под Дискуз в чайна-нете есть сплойты. но азиаты в осовном на вин-системы ориентируются.

    если что пиши в личку. жаба тоже есть)
     
  9. Expl0ited

    Expl0ited Members of Antichat

    Joined:
    16 Jul 2010
    Messages:
    1,035
    Likes Received:
    534
    Reputations:
    935
    в качестве переноса строки нужно использовать \r
    select "test\rtest2" into outfile '/путь/1.txt'
    Code:
    cat 1.txt
    test
    test2
    если использовать \n то получится:
    Code:
    cat 2.txt
    test\
    test2
     
    _________________________
  10. Pirotexnik

    Pirotexnik Member

    Joined:
    13 Oct 2010
    Messages:
    376
    Likes Received:
    73
    Reputations:
    38
    Создался нормально!

    .php - 403
    .shtml - не выполняется
    .jpg - не выполняется
    .gif - не выполняется
     
    #10 Pirotexnik, 8 Apr 2012
    Last edited: 10 Apr 2012
  11. Cennarios

    Cennarios Elder - Старейшина

    Joined:
    13 Jul 2008
    Messages:
    378
    Likes Received:
    179
    Reputations:
    108

    Сие означает , что либо на директорию выставлены соответствующие права , запрещающие выполнение скриптов или базовая конфигурация апача опционально игнорирует правила htaccess к данной конкретной директории.
     
    1 person likes this.
  12. asiaman

    asiaman New Member

    Joined:
    4 Aug 2011
    Messages:
    27
    Likes Received:
    2
    Reputations:
    0
    Я тоже с таким столкнулся, но на другом ресурсе.

    Для ТС. По твоему хосту я выснил, что его уже дручили не раз. Маднет вообще потещает "uzbekcms" :D :D :D Хотя через маднет-сканер вроде одна дитектория для записи есть.

    + советую пройтись просканить директории сканером dipbuster. Возможно существует нужная и доступная директория.
     
    1 person likes this.
  13. Pirotexnik

    Pirotexnik Member

    Joined:
    13 Oct 2010
    Messages:
    376
    Likes Received:
    73
    Reputations:
    38
    Прошелся чем можно, только 1 дира... В ней ничего как php не выполняется...

    .htaccess тупо игнорируется. Конфиг апача либо не доступен для чтения, либо я его не нашел.

    Варианты?
     
  14. Pirotexnik

    Pirotexnik Member

    Joined:
    13 Oct 2010
    Messages:
    376
    Likes Received:
    73
    Reputations:
    38
    UPD!!!

    Там стоит nginx!
    Для него конфиги тоже задаются .htaccess?
    Несмотря на это в дире /admin .htaccess работает исправно!

    Конфиг nginx
    Code:
    user nginx;
     worker_processes 6;
     worker_rlimit_nofile 10240;
    
     #error_log /var/log/nginx/error.log;
     error_log /var/log/nginx/error.log notice;
     #error_log /var/log/nginx/error.log info;
    
     #pid /var/run/nginx.pid;
    
    
     events {
     worker_connections 1024;
     }
    
    
     http {
     include mime.types;
     default_type application/octet-stream;
    
     log_format main '$remote_addr $remote_user [$time_local] "$request" '
     '$status $body_bytes_sent "$http_referer" '
     '"$http_user_agent" "$http_x_forwarded_for"';
    
     access_log off;
    
     sendfile on;
     # tcp_nopush on;
     # tcp_nodelay on;
    
     #keepalive_timeout 0;
     keepalive_timeout 65;
    
     gzip on;
     gzip_disable "msie6";
    
     index index.php index.html index.htm;
    
     client_max_body_size 500m;
     upload_progress upload 1m;
     upload_progress_json_output;
    
     server {
     listen 80;
     server_name target.net;
     rewrite ^ http://www.target.net$request_uri permanent;
     }
    
     server {
     listen 80;
     server_name www.target.net 
     target.at www.target.at
     target.name www.target.name
     target.org www.target.org
     target.tk www.target.tk
     target.us www.target.us
     target.de www.target.de;
    
     rewrite ^/index.htm$ /index.php last; 
     rewrite ^/index.html$ /index.php last; 
     rewrite ^/members/uploads/([a-z0-9_]+)/([-a-z_]+)__(.*)$ /members/uploads/$1/_$3 last; 
     rewrite ^/members/uploads/([a-z0-9_]+)/([-a-z_]+)_(.*)$ /members/uploads/$1/$3 last;
     rewrite ^/([-a-z_]+).html$ /keyword.php?keyword=$1 last;
     rewrite ^/gallery_photo_([a-z]+)_([0-9]+)_([0-9]+).html$ /gallery_photo.php?l=$1&gender=$2&page=$3 last;
     rewrite ^/view_([a-z]+)_([0-9]+).html$ /view.php?l=$1&id=$2 last;
     rewrite ^/paypalok_([a-zA-Z0-9]+)_([a-zA-Z0-9]+)_([a-zA-Z0-9]+).html$ /paypalok.php?id=$1&package=$2&magic=$3 last;
    
     root /home/target/public_html;
    
     location /members/ {
     location ~ \.(php|php3|php4|php5)$ {
     deny all;
     }
     location ~ \.(jpg|png|gif|bmp|css|js)$ {
     expires 30d;
     }
     }
    
     location /admin/ {
     rewrite ^(.*).zip$ $1.php last;
    
     location ~ \.php$ {
     access_log /var/log/nginx/www.IK.admin.access.log main;
     include proxy_params;
     }
     }
    
     location /phpMy777/ {
     alias /srv/www/htdocs/phpMy777/;
     index index.php index.html index.htm;
     }
    
     location = /upload_progress {
     upload_progress_header APC_UPLOAD_PROGRESS;
     report_uploads upload;
     }
     location ~ /upload\.php$ {
     access_log /var/log/nginx/www.IK.uploads.log main;
     include proxy_params;
     upload_progress_header APC_UPLOAD_PROGRESS;
     track_uploads upload 30s;
     }
    
     location ~ \.php$ {
     access_log /var/log/nginx/www.IK.php.access.log main;
     include proxy_params;
     }
    
     # ngix statistic
     location = /nginx-stat {
     stub_status on;
     access_log off;
     allow 188.40.*.*;
     allow 127.0.0.1;
     allow 46.4.*.*;
     deny all;
     }
    
     # redirect server error pages to the static page /50x.html
     #
     error_page 500 502 503 504 /50x.html;
     location = /50x.html {
     root /srv/www/htdocs/;
     }
    
     error_page 404 /404.html;
     location = /404.html {
     root /srv/www/htdocs/;
     }
    
     # deny access to .htaccess files, if Apache's document root
     # concurs with nginx's one
     #
     location ~ /\.ht {
     deny all;
     }
     }
     }
     
    #14 Pirotexnik, 10 Apr 2012
    Last edited: 10 Apr 2012
  15. Pirotexnik

    Pirotexnik Member

    Joined:
    13 Oct 2010
    Messages:
    376
    Likes Received:
    73
    Reputations:
    38
    YAHOOOOOO!!!!

    Зашел с 81 портом, постучал в бубен, потом по дереву, потом заработало!
    Всем спасибо, всех люблю! :*:*:* :)

    p.s. ребят, возьмите на заметку, нащёт 81 порта. Точнее нащёт того, кто обрабатывает страничку. Узнать кто на каком можно nmap'ом.
     
  16. asiaman

    asiaman New Member

    Joined:
    4 Aug 2011
    Messages:
    27
    Likes Received:
    2
    Reputations:
    0
    В смысле? получилось. можно чуть-чуть по подробнее. спс.
    Или краткий мануал для новичков, можно в форме статьи. Я бы с радостью прочитал, как ты все делал и какие подводные камни были.
     
    #16 asiaman, 10 Apr 2012
    Last edited: 10 Apr 2012
  17. Pirotexnik

    Pirotexnik Member

    Joined:
    13 Oct 2010
    Messages:
    376
    Likes Received:
    73
    Reputations:
    38
    Хорошо, будет "От дорка до рута 2"
    Действительно, много-много нового узнал во время хэка этого сайта.
     
  18. asiaman

    asiaman New Member

    Joined:
    4 Aug 2011
    Messages:
    27
    Likes Received:
    2
    Reputations:
    0
    Супер! Спасибо.

    З.Ы. Надеюсь, что пафосные товарищи не будут тебя критиковать. А то они может и уровнем по выше. Но статьи не пишут, активно знаниями не деляться. А только пафос. Не обращай на них внимания. Главное, чтобы новичкам было понятно. И это гуд ;)
     
  19. Cennarios

    Cennarios Elder - Старейшина

    Joined:
    13 Jul 2008
    Messages:
    378
    Likes Received:
    179
    Reputations:
    108


    НИчего сверхъестественного здесь нет. Во первых, nginx не обрабатывает .htaccess. Файл .htaccess, это чисто апачевская приблуда. Далее, имеет место банальная связка nginx+apache по схеме frontend-backend для повышения производительности сервера. При должной настройке nginx обычно вешается на 80 порт и ловит все приходящие пакеты с заголовками по типовой схеме browser->80 port server и передает на backend apache, который вешают в силу естественных причин на другой порт, в данном случае на 81.
     
  20. Pirotexnik

    Pirotexnik Member

    Joined:
    13 Oct 2010
    Messages:
    376
    Likes Received:
    73
    Reputations:
    38
    Да, там связка, все верно! Но несмотря на это, на 80 порту не работает, на 81 работает.

    Почему?
     
Loading...