Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» Установка Apache 2.x, PHP4, PERL и MySQL на localhost под Wi

Автор: israel_rider
Дата сообщения: 05.09.2009 21:57

Цитата:
корявой компиляции при сборке
Я сам ни чего не компилировал. Использовал готовые установщики - apache_2.2.13-win32-x86-no_ssl.msi и php-5.2.10-win32-installer.msi .
Цитата:
какой модуль в апаче используется для подключения php

PHPIniDir "C:/PHP/"
LoadModule php5_module "C:/PHP/php5apache2_2.dll"
Я правильно ответил на Ваш вопрос?
Автор: Cheery
Дата сообщения: 05.09.2009 22:00
israel_rider
попробуйте использовать php5apache2_2_filter.dll (не помню точно в чем разница)
и, главное, поставить коммент на всех расширениях в php.ini
если не поможет - попробовать откатиться на пред. версию php
Автор: israel_rider
Дата сообщения: 05.09.2009 22:03
Хотя... сейчас ситуация не совсем та, что была.... Сейчас я искуственно спровацировал ошибку, закомментировав - ;extension_dir ="C:\PHP\ext"
А тогда ошибка была в том, что РНР не находил модуль MySQL. Ошибка пропала тогда , когда я положил в систем 32 библиотеку libmysql.dll.
Автор: Cheery
Дата сообщения: 05.09.2009 22:04
israel_rider

Цитата:
Сейчас я искуственно спровацировал ошибку, закомментировав - ;extension_dir ="C:\PHP\ext"

я говорил об каждом в отдельности, а не директори.

Цитата:
А тогда ошибка была в том, что РНР не находил модуль MySQL. Ошибка пропала тогда , когда я положил в систем 32 библиотеку libmysql.dll.

правильно - так и должно было быть. либо в системную, либо в папку с исполняемым файлом апача
Автор: israel_rider
Дата сообщения: 05.09.2009 22:08
А вообще весь сыр - бор начался из за того, что я послушал вот этого

"Тем кто не знает, что значат записи -
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Program Files (x86)\\PHP\\ext\\php_sybase_ct.dll'
\xcd\xe5 \xed\xe0\xe9\xe4\xe5\xed \xf3\xea\xe0\xe7\xe0\xed\xed\xfb\xe9 \xec\xee\xe4\xf3\xeb\xfc.\r\n in Unknown on line 0
не нужно искать в поисковых системах перевод и дешифраторы этого кода.
Необходимо в файле конфигурации php.ini, в директиве error_log, указать путь к файлу регистрации ошибок PHP
error_log = c:\php_errors.log "

совета, вычитанного вот здесь - http://www.avege.ru/russian/php/php02a.shtml
Автор: Cheery
Дата сообщения: 05.09.2009 22:09
israel_rider

Цитата:
бор начался из за того, что я послушал вот этого

это глупость
Автор: israel_rider
Дата сообщения: 05.09.2009 22:15
Cheery, спасибо за помощь. Жалко только, что не остаётся не сил не времени разобраться в этом вопросе досканально....
Автор: Aleksey1580
Дата сообщения: 24.10.2009 14:52
Замучался с той же самой проблемой, но решение нашел. Может и вам поможет - у меня был DrWeb SpiderMail. Надо зайти в его настройки и добавить apache.exe в "Исключаемые приложения"

Добавлено:
Это я к проблеме:

>Ребята, нужна ваша помощь. Мой апач сошел с ума. Ставится замечательно, но работать не >хочет. При попытке загрузить страничку локалхоста мой FF пишет "ожидание ответа от >localhost", и ожидать ответа он может вечно. Подскажите, в чем моет быть проблема.
>Firewall исключается.
>Все конфиги дефолтовые.

http://forum.ru-board.com/topic.cgi?forum=8&topic=1735&start=860
Автор: mont
Дата сообщения: 10.12.2009 23:38
Добрый день
Начальство поставило задачу:
Есть два сайта A и B (основной и вспомогательный). Вспомогательный хостится у нас на Apache под Win.
Основной хостится где-то и временами недоступен. По адресу tratra.ru (к примеру) должен открываться основной сайт, если он доступен, иначе вспомогательный.
Можно ли подобное условие прописать с помощью Apache, есть ли стандартное решение? Не хочется изобретать велосипед.
Мне пока пришло в голову только положить скрипт вызываемый по запросу tratra.ru
<?php
function redirectTo($URL)
{
    header ("Location: $URL");
}
ini_set('display_errors',0);
$fp = fsockopen("aaaaaa.ru", 80, $errno, $errstr, 30); # проверяем доступен ли основной сайт
if (!$fp) {
redirectTo("http://bbbbbb.ru"); # открыть вспомогательный сайт B (к примеру)
} else {
redirectTo("http://aaaaaa.ru"); # перейти на основной сервер A
    close($fp);    
    }
?>    
Автор: MasterKit
Дата сообщения: 11.12.2009 17:17
Подскажите, пожалуйста, вот с таким вопросом:

Как подключиться к базе данных на другом компе в сети с помощью "MySQL Command Line Client"? Смотрел хелп, там есть команда "connect", но не могу разобраться как указать порт на котором висит база.
Автор: faithful
Дата сообщения: 11.12.2009 18:06
MasterKit

Цитата:
не могу разобраться как указать порт на котором висит база

опция --port должна помочь.
http://dev.mysql.com/doc/refman/5.0/en/mysql-command-options.html#option_mysql_port
Автор: MasterKit
Дата сообщения: 11.12.2009 18:19
Вот так не работает:

connect -h 192.168.5.5 -P 8090;

Пишет: ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.5.5' (10061)

Платформа Win32
Автор: faithful
Дата сообщения: 11.12.2009 18:33
MasterKit
я бы предложил с материалом по предложенной ссылке ознакомится.
И попробовать подключаться не командой connect, а указать все опции подключения в командной строке:

Код: > mysql --host=XXXXXXXX --port=XXXX --user=root --password --database=XXXXXXX
Автор: MasterKit
Дата сообщения: 11.12.2009 19:20
Тогда пишет про ошибочный синтаксис:

mysql> --host=192.168.5.5 --port=8090 --user=root --password --database=testing;

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near '--hos
t=192.168.5.5 --port=8090 --user=root --password --database=testing' at line 1
Автор: faithful
Дата сообщения: 11.12.2009 19:31
MasterKit

Цитата:
Тогда пишет про ошибочный синтаксис

Ну естественно. Нужно быть внимательным!
Не mysql>, а >mysql
Утилите mysql можно передавать параметры
Автор: MasterKit
Дата сообщения: 13.12.2009 11:38
faithful, спасибо за помощь

Теперь далее: никак не могу победить кодировки.

Сделал новую БД, таблицу, содержащую 2 поля (1-ое типа int, 2-ое - text). Создавал и добавлял данные через консоль или прогу SQLyog и выводил через них же, всё гуд. Но на Perl - cgi (charset=windows-1251) из текстового поля одни знаки вопроса. Везде в настройках сервера поставил cp1251 и создавал всё принудительно указываю эту кодировку. Подскажите, пожалуйста, в чём может быть дело?
Автор: faithful
Дата сообщения: 13.12.2009 21:01
MasterKit
а показать как перл готовит и отдает текст серверу? Телепатов то нет
Автор: MasterKit
Дата сообщения: 13.12.2009 21:54
#!D:/Perl/bin/perl -w

use DBI;

$database = "mybase1";
$hostname = "localhost";
$port = "8090";
$username = "root";
$password = '';

$dsn = "DBI:mysql:database=$database;host=$hostname;port=$port";
$dbh = DBI->connect($dsn, $username, $password) or die("Could not connect!");

print "Content-Type: text/html\n\n";
print "<html>\n";
print "<head>\n";
print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\">\n";
...
$sql = "SELECT * FROM mytable1";
$sth = $dbh->prepare($sql);
$sth->execute;
while(($column1, $column2) = $sth->fetchrow_array)
{
print "<option value=\"$column1\">$column1 - $column2</option>\n";
}
$dbh->disconnect;

Так я тока перлом забираю текст, вносить пробовал через консоль и прогу SQLyog
Автор: faithful
Дата сообщения: 14.12.2009 14:16
MasterKit
Понятно.
А если сделать так:

Код: $sql = "SELECT
CONVERT(field1 USING cp1251) as col1,
CONVERT(field2 USING cp1251) as col2
FROM mytable1";
Автор: MasterKit
Дата сообщения: 14.12.2009 17:18
К сожалению, то же самое, одни знаки вопроса вместо текста.
Автор: faithful
Дата сообщения: 14.12.2009 18:20
Хорошо.
А делаем так:

Код: while(($column1, $column2) = $sth->fetchrow_array)
{
$opt1 = unpack('H*', $column1);
$opt2 = unpack('H*', $column2);
print "<option value=\"$column1\">$opt1 - $opt2</option>\n";
}
Автор: MasterKit
Дата сообщения: 14.12.2009 21:00
да, вот такое, например, получается "3f3fae3f3f3f3fa0"
Автор: marineclub
Дата сообщения: 15.12.2009 03:27

Цитата:
не могу победить кодировки


Мускул пятой версии? Сразу за строкой коннекта к DB выполнять

mysql_query("SET NAMES 'cp1251'");
Автор: MasterKit
Дата сообщения: 15.12.2009 09:53
Версия 5.1.41

"Set names" не помогает.
Автор: faithful
Дата сообщения: 15.12.2009 10:36
MasterKit

Цитата:
да, вот такое, например, получается "3f3fae3f3f3f3fa0"

А в базе правильный текст? В какой кодировке?
Автор: MasterKit
Дата сообщения: 15.12.2009 18:07

Цитата:
А в базе правильный текст?

Честно, не знаю, подскажи, как проверить?


Цитата:
В какой кодировке?

Хотелось бы 1251.

Могу вот только показать, как заносил пробные данные: _ttp://webfile.ru/4163224 (там принт-скрин)
Автор: faithful
Дата сообщения: 15.12.2009 18:12
MasterKit

Цитата:
Честно, не знаю, подскажи, как проверить?

мне легче phpAdmin поставить, чем гуглить на предмет другого инструмента.


Цитата:
Хотелось бы 1251.

А при конструировании базы|таблицы какой charset задавался?
Автор: MasterKit
Дата сообщения: 15.12.2009 18:21
вначале в настройках (my.ini) везде поставил 1251, сделал базу и таблицу не получилось, а потом по новой сделал с явным указанием кодировки (1251).
Автор: faithful
Дата сообщения: 15.12.2009 18:46
значит осталось узнать что же все таки в базу записано.
Автор: MasterKit
Дата сообщения: 15.12.2009 18:58
ты принт-скрин посмотрел?

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950

Предыдущая тема: Вопросы по Linux Mandrake 9.0


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.