Любые обсуждения по этой теме. Само-пиар или резюме публиковать на другие наши проекты, например host.camp или vm.center. Тут только клиентские запросы на помощь.
  • Дата создания
    17 марта 2019
  • Топиков
    908
  • Ограничение на постинг
    0.000
  • Категория:
    Администрирование и настройка

Почему не подключается драйвер PDO?

Windows 7 x64. Поставил апач x64 с Apache Lounge, PHP 5.6.11 x64, вроде всё связал, работает.
Но PHP пишет, что не найден драйвер PDO (юзаю MySQL).

PHPINFO пишет:

PDO support enabled
PDO drivers no value

Раскомментировал в php.ini строки:
extension=php_pdo_mysql.dll
extension=php_pdo_oci.dll
(эти файлы есть в папке ext)

Перезапустил апач, сделал рефреш — та же ошибка и ни одного подключенного драйвера PDO.

В чём дело?

Вот инфа о PHP:

Compiler MSVC11 (Visual C++ 2012)
Architecture x64
Configure Command cscript /nologo configure.js "--enable-snapshot-build" "--disable-isapi" "--enable-debug-pack" "--without-mssql" "--without-pdo-mssql" "--without-pi3web" "--with-pdo-oci=c:\php-sdk\oracle\x64\instantclient_12_1\sdk,shared" "--with-oci8-12c=c:\php-sdk\oracle\x64\instantclient_12_1\sdk,shared" "--enable-object-out-dir=../obj/" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--without-analyzer" "--with-pgo"

Почему не работает mod_rewrite?

День добрый.
Вот содержимое моего файла httpacess:
AllowOverride All RewriteEngine on RewriteBase / RewriteRule ^(take|push)\/(\D{2})(?:\/([0-9]+))? $1/default.php?cat=$2&page=$3 RewriteRule ^(take|push)\/([0-9]+) $1/default.php?page=$2 RewriteRule ^(take|push)\/p\/ $1/getDate.php?getArticle=$2 #Проверка на мобильный — скопипащена с сайта detectmobilebrowsers.com/ RewriteCond %{HTTP_USER_AGENT} (android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge\ |maemo|midp|mmp|mobile.+firefox|netfront|opera\ m(ob|in)i|palm(\ os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows\ ce|xda|xiino [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a\ wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r\ |s\ )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1\ u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp(\ i|ip)|hs\-c|ht(c(\-|\ |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac(\ |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt(\ |\/)|klon|kpt\ |kwc\-|kyo(c|k)|le(no|xi)|lg(\ g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-|\ |o|v)|zz)|mt(50|p1|v\ )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v\ )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-|\ )|webc|whit|wi(g\ |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-) [NC] RewriteRule ^alert\/(.*)@(.+)$ alert/$1m/$2 [R,L]

Лежит он в корне сайта, mod_rewrite на сервере включен — инфа сотка :). Почему же перенаправления не работают? Ошибка в коде?

Как правильно выставить права?

1. Сделал symlink с /var/www на /home/myadmin/www
2. myadmin редактирует/удаляет файлы в папке /www
3. Хозяин на /www и все поддиректории/файлы — myadmin:www-data

Как выставить права?
Сейчас стоит 640, но есть много файлов, которые потребуется изменять через веб-морду(например php должен будет записать в текстовик).

Пути решения(какой выбрать)?
1. В ручную ставить на каждый файл, который может быть изменен 660 права? (а если таких файлов много)
1.1 На директории загрузки какие выставить права?
2. Поставить на весь /www 660 права?

Долгий ответ от сервера, более 3 сек. Какой элемент вызывает ошибку на движке wordpress?

При загрузке сайта ohmybox.ru идет долгий ответ от сервера почти более 3х секунд

при выполнении индексного скрипта сайта происходят множественные подключения к серверу 2a00:1450:4010:c02::93, чем и вызвана наблюдаемая проблема.

connect(5, {sa_family=AF_INET6, sin6_port=htons(80), inet_pton(AF_INET6, «2a00:1450:4010:c02::93», &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = -1 EINPROGRESS (Operation now in progress)
poll([{fd=5, events=POLLOUT}], 1, 713) = 1 ([{fd=5, revents=POLLOUT}])
getsockopt(5, SOL_SOCKET, SO_ERROR, [0], [4]) = 0
sendto(5, «GET / HTTP/1.1\r\nHost: www.google.»..., 53, MSG_NOSIGNAL, NULL, 0) = 53
poll([{fd=5, events=POLLIN|POLLPRI}], 1, 0) = 0 (Timeout)
poll([{fd=5, events=POLLIN|POLLPRI}], 1, 0) = 0 (Timeout)
poll([{fd=5, events=POLLIN|POLLPRI}], 1, 1000^C

Как исправить данную ошибку и какой элемент следует подправить или вообще отключить т.к. влияет на загрузку основного контента?

заранее большое спасибо!

Микротик. Как настроить проброс до веб сервера?

Суть проблемы…
Настроен проброс портов с 77.77.77.1, 77.77.77.2 на 66.66.66.66.
За ним стоит веб сервер 10.10.10.10.

Сетевое оборудование mikrotik cloud core 1036-12G-4S.

Так вот. При обращении клиентов на 66.66.66.66 — веб сервер видит внешние ip адреса клиентов, а при обращении через 77.77.77.1, 77.77.77.2 — веб сервер показывает ip 77.77.77.1, 77.77.77.2.

Каким образом реализовать проброс портов так, чтобы веб сервер видел ip адреса клиентов идущих через 77.77.77.1, 77.77.77.2?

ip 66.66.66.66 клиенты не должны видеть. прячусь от ддос.
Графическая схема упрощена.

Мониторинг служб Windows по SNMP?

Экспериментирую с проверкой работы служб в Windows через Zabbix без использования агента. Через SNMP можно получить следующие данные:
$ snmpwalk -v 2c -c public 10.0.XXX.XXX LanMgr-Mib-II-MIB::svSvcName LanMgr-Mib-II-MIB::svSvcName.«Server» = STRING: «Server» LanMgr-Mib-II-MIB::svSvcName.«Netlogon» = STRING: «Netlogon» LanMgr-Mib-II-MIB::svSvcName.«IP Helper» = STRING: «IP Helper» LanMgr-Mib-II-MIB::svSvcName.«Telephony» = STRING: «Telephony» LanMgr-Mib-II-MIB::svSvcName.«DNS Client» = STRING: «DNS Client» LanMgr-Mib-II-MIB::svSvcName.«DHCP Client» = STRING: «DHCP Client» LanMgr-Mib-II-MIB::svSvcName.«DHCP Server» = STRING: «DHCP Server» LanMgr-Mib-II-MIB::svSvcName.«Workstation» = STRING: «Workstation» LanMgr-Mib-II-MIB::svSvcName.«SNMP Service» = STRING: «SNMP Service»…
На основе них создал элемент данных типа «SNMPv2 агент». Сделал ключ, например:
LanMgr-Mib-II-MIB::svSvcOperatingState[«index»,«LanMgr-Mib-II-MIB::svSvcName»,«DHCP Client»]
Если служба находится в состоянии «Работает», то все отлично и получаю ответ «1».
Если же служба выключается, то сама запись об этой службе исчезает в выдаче SNMP, соответственно в Zabbix'е отображается ошибка, что snmp запрос не удался: «SNMP error: (noSuchName) There is no such variable name in this MIB».
Пытался сделать триггер на отсутствие данных: {Custom Test Template:DHCP_Client_Service.nodata(60s)}=1 — не срабатывает.

Вопрос: Возможно ли в Zabbix'е создать триггер на ошибку получения данных? Или как правильнее мониторить службы Windows без использования клиента?

Настроить .htaccess выполнение «PHP как FAST-CGI», каким способом выполнять любые (нестандартные) файлы, как php?

На хостинге есть много файлов, с разным НЕСТАНДАРТНЫМ расширением, но названия шаблонные.
Например user.text?log-7

Если бы расширения были .htm и т.д., и их было бы немного, то запись была бы такая для .htaccess

FCGIWrapper /var/www/user/data/php-bin/php .html
FCGIWrapper /var/www/user/data/php-bin/php .htm
FCGIWrapper /var/www/user/data/php-bin/php .php
AddHandler fcgid-script .php .html .htm

Но нужно сделать, наоборот есть несколько названий, а расширений масса, пример ниже

На другом хостинге использовал

ForceType application/x-httpd-php

но там по другому настроен сервер

Как настроить для FASTCGI?

Как распараллелить два сервере с сайтами?

есть сервер, nginx + php5-fpm
т.к. нагрузка на один из сайтов стала расти, пришли к выводу, что необходимо нагруженный сайт вынести на отдельный инстанс. Вот встала задача. Теперь есть два сервера. на одном несколько сайтов, на втором один нагруженный. Могли бы тыкнуть носом что и где почитать, чтобы настроить работу этих двух серверов?
Если бы был апач на бэкэнде, я б настроил и на одной и на другой машине по серверу и указал бы документ рут всем, а nginx просто проксировала бы. Но в моем случае настроено php5-fpm и апача нет, и как то нет мыслей как указать php5-fpm о том, где брать файлы. В настройках виртуал хоста, документрут будет повидимому относиться к локальным файлам? или к удаленным?

РЕШЕНО!
Оказалось я двигался в неверном направлении. В итоге настроил proxy_pass и все заработало

Как реализовать рекурсивный запуск PHP на хостинге?

Имеется хостинг на котором max_execution_time = 30, exec и system отключены. Нужно спарсить где-то 200-300 страниц, при этом скрипт должен вызывается по крону через определенное время. Решил сделать через рекурсию, что-то вроде $var1 = $_GET[«var1»];… curl_setopt($ch, CURLOPT_URL,«domain.com/myphp.php?var1=»....); curl_exec($ch);
Но проблема в том, что все отработавшие скрипты остаются «висеть», ожидая ответа, что сильно тормозит весь процесс, да и больше 5 скриптов не дает… Как настроить курлы, чтобы они не ждали ответа? Или может быть есть какие-то более практичные альтернативы?

ISPConfig как поменять структура сайта?

Как настроить ISP Config что бы создаваемые панелью сайты имели иную структуру.
По умолчанию, корень сайта и веб-приложения совпадает, однако требуется что бы корень сайта был подпапкой веб-приложения
Делаю для приложений на Yii2
т.е.

Веб-приложение ставится в /home/site
В конфиг (к примеру) апача пишется
DocumentRoot /home/site/web
а так же чтобы
open_basedir=/home/site