Ответы пользователя по тегу PHP
  • Установка старой версии PHP (5.4) на Debian 9?

    @ShamblerR
    Только что проверял
    apt-get update
    apt-get install -y libfcgi-dev libfcgi0ldbl libjpeg62-dbg libmcrypt-dev libssl-dev libxml2-dev zlib1g-dev libcurl4-gnutls-dev libjpeg-turbo8-dev libbz2-dev libjpeg-dev libfreetype6-dev libmcrypt-dev libcurl4-gnutls-dev
    ln -s /usr/include/x86_64-linux-gnu/curl curl
    
    cd /usr/local/include
    mkdir /opt/php-5.4.45
    mkdir /usr/local/src/php5
    cd /usr/local/src/php5
    wget http://de2.php.net/get/php-5.4.45.tar.gz/from/this/mirror
    mv mirror php-5.4.45.tar.gz
    tar -xzvf php-5.4.45.tar.gz
    cd php-5.4.45
    ./configure --prefix=/opt/php-5.4.45 --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data --enable-mbstring --enable-sockets --enable-exif --enable-bcmath --enable-calendar --enable-zip --enable-ftp --enable-gd-native-ttf --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-freetype-dir --with-zlib --with-zlib-dir --with-bz2 --with-mcrypt --with-mhash --with-pcre-regex --with-libxml-dir=/usr --with-xmlrpc --with-xsl --with-mysql --with-libdir=/lib/x86_64-linux-gnu --with-curl
    make
    make install



    /opt/php-5.4.45/bin/php -v
    PHP 5.4.45 (cli) (built: Mar 12 2019 20:05:50)
    Copyright (c) 1997-2014 The PHP Group
    Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
    Ответ написан
    Комментировать
  • Как установить PHP 5.3 в Debian 8.5?

    @ShamblerR
    debian 9, может кому полезно будет

    apt-get update
    apt-get install -y libfcgi-dev libfcgi0ldbl libjpeg62-dbg libmcrypt-dev libssl-dev libxml2-dev zlib1g-dev libcurl4-gnutls-dev libjpeg-turbo8-dev libbz2-dev libjpeg-dev libfreetype6-dev libmcrypt-dev libcurl4-gnutls-dev
    ln -s /usr/include/x86_64-linux-gnu/curl curl
    
    cd /usr/local/include
    mkdir /opt/php-5.4.45
    mkdir /usr/local/src/php5
    cd /usr/local/src/php5
    wget http://de2.php.net/get/php-5.4.45.tar.gz/from/this/mirror
    mv mirror php-5.4.45.tar.gz
    tar -xzvf php-5.4.45.tar.gz
    cd php-5.4.45
    ./configure --prefix=/opt/php-5.4.45 --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data --enable-mbstring --enable-sockets --enable-exif --enable-bcmath --enable-calendar --enable-zip --enable-ftp --enable-gd-native-ttf --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-freetype-dir --with-zlib --with-zlib-dir --with-bz2 --with-mcrypt --with-mhash --with-pcre-regex --with-libxml-dir=/usr --with-xmlrpc --with-xsl --with-mysql --with-libdir=/lib/x86_64-linux-gnu --with-curl
    make
    make install


    /opt/php-5.4.45/bin/php -v
    PHP 5.4.45 (cli) (built: Mar 12 2019 20:05:50)
    Copyright (c) 1997-2014 The PHP Group
    Ответ написан
    Комментировать
  • Не работает правильно RewriteRule для ЧПУ. Ребята кто знает ответ?

    @ShamblerR
    А я то думал что ?id=9 это гет запрос.
    и того = google.ru " редирект с гет запросом"
    Ответ написан
    Комментировать
  • Как настроить .htaccess?

    @ShamblerR
    Только тут наоборот как у нормальных людей слеш в конце. Но это я думаю уже переделаешь по аналогии.
    ############################################################################
    #### Cтандартный .htaccess для проектов студии Клондайк, версия 2.3     ####
    ############################################################################
    RewriteEngine On
       #  Директива включает редиректы.
    RewriteBase / 
       # Без директивы (.*) = /$1 будет /var/wwww/site/web/$1  с директивой  = /$1
    Options +FollowSymLinks
       # Разрешает переход по символическим ссылкам.
    
    ############################################################################
    #### Перенаправляем протокол https на http                              ####
    ############################################################################
    RewriteCond %{HTTPS} on
       # Проверяем наличие https в URL.
    RewriteRule ^.*$ http://%{SERVER_NAME}%{REQUEST_URI}
       # Перенаправляем протокол на http.
    
    ############################################################################
    #### Выбор основного зеркала (или с www или без www)                    ####
    ############################################################################
       # 1. Редирект с www на без www. (раскоментировать директивы пункта 1)
    #RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
       # Проверяем, содержит ли домен www (в начале URL).
    #RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
       # Перенаправляем URL на домен без www.
    ####
       # 2. Редирект без www на www. (раскоментировать директивы пункта 2)
    #RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
       # Проверяем, не содержит ли домен www (в начале URL).
    #RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
       # Перенаправляем URL на домен c www.
    
    ############################################################################
    #### Убираем повторяющиеся слеши (/) в URL                              ####
    ############################################################################
    RewriteCond %{REQUEST_URI} ^(.*)/{2,}(.*)$
       # Проверяем, повторяется ли слеш (//) более двух раз.
    RewriteRule . %1/%2 [R=301,L]
       # Исключаем все лишние слеши.
    
    ############################################################################
    #### Убираем слеши в конце URL для статических файлов (содержит точку)  ####
    ############################################################################
    RewriteCond %{REQUEST_URI} \..+$  
       # Если файл содержит точку.
    RewriteCond %{REQUEST_FILENAME} !-d   
       # И это не директория.
    RewriteCond %{REQUEST_FILENAME} -f
       # Является файлом.
    RewriteCond %{REQUEST_URI} ^(.+)/$      
       # И в конце URL есть слеш.
    RewriteRule ^(.+)/$ /$1 [R=301,L]     
       # Исключить слеш.
    
    ############################################################################
    #### Добавляем слеш(/), если его нет, и это не файл.                    ####
    ############################################################################
    RewriteCond %{REQUEST_URI} !(.*)/$
       # Если слеша в конце нет.
    RewriteCond %{REQUEST_FILENAME} !-f
       # Не является файлом.
    RewriteCond %{REQUEST_URI} !\..+$
       # В URL нет точки (файл).
    RewriteRule ^(.*)$ $1/ [L,R=301]
       # Добавляем слеш в конце.
    
    ############################################################################
    #### Убираем index.php, если он есть в конце URL                        ####
    ############################################################################
    RewriteCond %{REQUEST_METHOD} =GET
       # Выявляем GET запрос в URL (не POST).
    RewriteCond %{REQUEST_URI} ^(.*)/index\.php$
       # URL cодержит index.php в конце.
    RewriteRule ^(.*)$ %1/ [R=301,L]
       # Удалить index.php из URL.
    
    ############################################################################
    #### Конец общей части, далее следует собственные директивы .htaccess   ####
    ############################################################################
    Ответ написан
    Комментировать
  • Почему не работает GET запрос?

    @ShamblerR
    может потому что GET не передается, я думаю всеже это както связано с этим!
    Стандартным методом нельзя перейти на страницу с гет параметром
    его можно сохранить и подставить переменной
    в конструкци
    конд
    рул
    Ответ написан
    1 комментарий
  • Нужен ли вообще RewriteBase?

    @ShamblerR
    нужен и даже очень.

    Пример если /
    без директивы$1 = /var/www/site/web/четотам
    с директивой $1=/

    Помоему профит очевиден

    теперь по
    AuthUserFile /home/u171101/mysiteru/www/admin/.htpasswd

    Поставь OpenServer и использоуй путь линуксовый.
    Если прям так приспичило то создай такую папку в структуре, и сделай ее лиинкой.
    Будет тебе счастье
    Ответ написан
  • Оцените конфиг apache + fastcgi+ php-fpm + opcache, кто пробовал?

    @ShamblerR
    Давайте расставим все на свои места.
    nginx+apache двухуровневая конфигурация:

    nginx+php-fpm - маст хев но одноуровневая конфа отличная скорость работы, за исключением отдельного балансера для статики. Есть ряд плюсов относительно FastCGI например нет гемороя с 503 поскольку является модулем самого nginx и последний легко видит умерший процесс. Требуется переписать весь .htaccess в servers nginx

    nginx в роле фронтенда и apache+fast-CGI +opcache в роле бэкэнда
    Практически класика, но opcache рекомендованно использовать с php5.5, ниже идет как расширение.
    Ответ написан
    1 комментарий
  • Как проверить строку на отсутствие ряда букв в RewriteCond (регулярные выражения, htaccess)?

    @ShamblerR
    RewriteCond %{REQUEST_URI} !^.*\.ru$
    Но если вам нужно еще и такой вариант
    RewriteCond %{REQUEST_URI} !^.*\.(ru\|ru\/)$
    Ответ написан
    Комментировать
  • Как исправить ошибку с хостингом?

    @ShamblerR
    Похоже что ваш сайт посетил злобный вирус ;) ну или действительно вы что-то сделали.
    Вероятность что хостер че-то сделал крайне мала, он вообще не любит че-то делать .
    Вы же делаете бэкапы?
    Ответ написан
    3 комментария
  • Как прослушивать порт с помощью apache?

    @ShamblerR
    telnet- вывод передаете в php
    Ответ написан
    Комментировать
  • Apache/php как изменить пользователя, от которого сохраняются файлы на сервере?

    @ShamblerR
    для начала какое представление php
    mod_apache FastCGI CGi PHP-FPM в зависимост от этого будет и ответ
    Ответ написан
  • Как запретить одновременный запуск PHP скрипта по крону?

    @ShamblerR
    лок есть в самом кроне
    Ответ написан
    Комментировать
  • Сайт на wordpress, лендинг по адресу site.com/landing/ так же имеет админку на wp отдельную от основного сайта, полностью не зависимые?

    @ShamblerR
    1.дай .htaccess на главном сайте.
    2. что происходит со 2 сайтом если на первом нет .htaccess ? он начинает работать ?
    3. если да то в часть где у тебя чпу добавь исключение
    реврайт конд %реквест ури ! ^/landing/.*
    Ответ написан
  • Почему не работает mod_rewrite?

    @ShamblerR
    в очередной раз уже милионный наверное.
    Редирект с гет запросами работает не так
    И того ваш вопрос выглядет
    "редирект с гет запросом" - удачи.
    Ответ написан
    Комментировать
  • Как сделать редирект c http на https для всех кроме одной страницы?

    @ShamblerR
    RewriteCond %{REQUEST_URI} !$ваш_урл1$  [NC,OR]
    RewriteCond %{REQUEST_URI} !$ваш_урл2$  [NC,OR]
    RewriteCond %{REQUEST_URI} !$ваш_урл3$  [NC,OR]
    RewriteCond %{REQUEST_URI} !$ваш_урл4$  [NC]
    # Последний без OR поскольку нет следующего или просто NC
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
    Ответ написан
    Комментировать
  • Как сделать так, чтобы сервер принимал адресы со слеэшем в конце и без слэша?

    @ShamblerR
    RewriteEngine On
    RewriteBase /
    Options +FollowSymLinks
    ############################################################################
    #### Убираем повторяющиеся слеши (/) в URL                              ####
    ############################################################################
    RewriteCond %{REQUEST_URI} ^(.*)/{2,}(.*)$
                #Проверяем, повторяется ли слеш (//) более двух раз.
    RewriteRule . %1/%2 [R=301,L]
                #Исключаем все лишние слеши.
    
    ############################################################################
    ####  убирает /  в конце строки если это файл ( содержит точку в урл)   ####
    ############################################################################
    RewriteCond %{REQUEST_URI} \..+$
                #содержит точку (файл)
    RewriteCond %{REQUEST_FILENAME} !-d
                #не директория
    RewriteCond %{REQUEST_FILENAME} -f
                 #является файлом
    RewriteCond %{REQUEST_URI} ^(.+)/$
                 #в конце урла есть слеш
    RewriteRule ^(.+)/$ /$1 [R=301,L]
                 #исключить слеш
    
    ############################################################################
    ####  Добавляет  /   если его нет, и это не файл!!!                     ####
    ############################################################################
    RewriteCond %{REQUEST_URI} !(.*)/$
                #слеша в конце нет
    RewriteCond %{REQUEST_FILENAME} !-f
                #является файлом
    RewriteCond %{REQUEST_URI} !\..+$
                #в урле нет точки (файл)
    RewriteRule ^(.*)$ $1/ [L,R=301,QSA]
                #добавляем слеш в конце
    Ответ написан
    Комментировать
  • Почему curl работает под root'ом и не работает из php?

    @ShamblerR
    О боже
    php -m | grep curl
    А вы его для php вообще ставили?
    sudo apt-get install php5-curl
    Ответ написан
    Комментировать
  • ЧПУ WordPress конфликтует с кастомным ,как исправить?

    @ShamblerR
    вопервых у вас редирект с гет параметром а он не передается таким способом вообще, дял редиректа с гет испльзуется двухуровневая конструкция. Где вы можите исключить в добавок все что вам потреюуется.
    Ответ написан
  • Почему тупит сайт на Nginx + PhpFpm без Apache?

    @ShamblerR
    как всегда начнем с заезженой валыны
    ЛОГИ В СТУДИЮ
    КОНФИГИ В СТУДИЮ

    iotop -oka - что говорит ?
    По хорошему и сам сайт, может у тебя там страница 40 метров и канал 10 мегабит.
    Ответ написан
    2 комментария