Veseloff
Moderator-
Posts
3,457 -
Joined
-
Last visited
-
Days Won
40
Content Type
Profiles
Forums
Calendar
Store
Everything posted by Veseloff
-
Всё делалось по памяти. В смысле такого сайта никогда не было, но стиль я немного помню. Не без подсказок Влада, конечно — я и кавычек везде понаставил и теги маленькими буквами писал... К сожалению, многое утеряно. У меня году в 1998 была ломовейшая книга «Самоучитель создания веб-сайтов» или как-то так называлась. Так вот к ней ещё шёл какой-то диск с отличнейшей коллекцией всякой gif-анимации и великолепных примеров страниц. Сейчас на сайте явно не хватает часов, взрывающихся салютов, счётчика посетителей и, конечно же, фреймов — со временем исправлю.
-
Вовсе не обязательно
-
Ссылку на проблемную страницу в студию!
-
В принципе да, и на винде можно. Винду накатить на комп легко — там вин7 предустановлен, за сколько-то там денег в магазине продадут ключ или что там надо для активации. Вообще это вполне себе сносный системник для офисной работы. Я просто к линуксу больше привык, да и памяти сервер у меня в спокойном состоянии со всеми запущенными серверами жрёт чуть больше 100 МБ, на винде, наверное, будет больше. А насчёт жалко денег, то у меня сработал простой расчёт — я до этого платил 1000 в месяц за VDS. Через месяц «серверок» уже окупится.
-
Влад, спасибо большое за критику — обязательно всё учту. Да, конечно. Директор и подсказал, что надо сделать бегущую строку.
-
Что такое? Я думаю, может, взрывающихся салютов добавить?
-
http://pmsrv.ru/ Вот я сделал новую пробную версию сайта для компании, в которой я работаю. Что вы об этом думаете? Чего ещё не хватает?
-
Сколько может стоить создание такого сайта ?
Veseloff replied to kantorez's topic in Goods and Services
Я очень люблю сравнивать всё с автомобилями. Вот почему не возникает ни у кого вопросов почему мерседес стоит дороже, чем ВАЗ? Тоже ведь 4 колеса и ездит. Вот и тут так же. Плата не только за продукт, но и за качество. Я много раз сталкивался с тем, что «дешёвый» работник берёт сразу много работы и, если всплывут косяки, то у него просто нет времени всё поправить, а у «дорогого» разработчика есть возможность посвятить себя только этому проекту и ничему больше и сделать его значительно лучше. Прошу прощения за флуд. -
Сразу оговорюсь, что всё, что будет здесь описано, будет описано максимально упрощённо и многие вещи лично у меня настроены иначе (разбивка диска, nginx на фронте...), но главное донести суть, а там уже тонкости. Для начала нам понадобится домашний интернет с выделенным «белым» IP. Да, есть аозможность сделать и без этого, но я считаю этот вариант плохим и недостойным рассмотрения. Теперь нам нужен сервер. Понятно, что всё зависит от предполагаемой нагрузки, но я не вижу смысла держать дома нагруженные (а, значит, важные) проекты — для этого лучше подойдёт хороший ЦОД. Я выбрал себе девайс под названием DNS Porto — это такой типа неттоп российской сборки http://ekaterinburg.dns-shop.ru/catalog/176/128891/ Скоро, вероятно, такие продавать перестанут, так как пошла новая линейка, но советую тоже брать что-то типа того. Тот который у меня отличается от того, который по ссылке, тем, что у моего 1 гиг памяти, а не два, процессор вроде бы на 1,66 ГГц, а не 1,8 и диск на 160 гигов, а не 250 — моей модели, видимо, уже нет в продаже. Выбрал я этот девайс потому что он маленький, тихий и электричества потребляет мало. Далее надо сделать так, чтобы кроме сервера, вашим домашним интернетом могли пользоваться и другие компьютеры в вашем доме. Самый простой путь — купить маршрутизатор. Хватит самого простого D-Link DIR-300, например. Если вай-фай не нужен, то можно такой же только без вай-фая — не помню как модель называется, но найдёте. Как настраивать маршрутизатор я рассказывать не буду — у д-линков там всё проще простого и вообще есть мануалы. Единственное, что нам надо будет — перебросить на наш сервер порты 21 (FTP), 22 (SSH) и 80 (HTTP). Можно добавить 3306 (MySQL), 443 (HTTPS) и вообще какие угодно, но это уже исходя из потребностей, мне не нужно, например. Теперь система. Мне по нраву Ubuntu Linux, так как устанавливается легко, ПО достаточно свежее и работать с ней приятно. Итак, идём на страницу загрузки http://www.ubuntu.com/download/server/download и грузим себе образ. Предпочесть стоит, думаю, последний LTS — сегодня это 10.04. У меня в сервере нет CD-привода и потому я делал себе загрузочную USB-флэшку — в десктопной убунте для этого есть специальная приблуда, как это делать в других системах я не знаю, но, думаю, на сайте это описано. В конце концов, можно постпрашивать на форумах, если что-то не будет получаться. Итак, подключаем к компьютеру монитор, клавиатуру и загружаемся с диска/флэшки. Для начала мы увидим экран выбора языка. Я считаю, что нужно всё ставить на английском, чтобы не было непоняток в случае косяков локализации. Выбираем «Install Ubuntu Server». То есть начнём устанавливать. Выберем язык для системы. Опять же я советую английский. Выберем наше местоположение. Other -> Europe -> Russian Federation. Понятно, что надо выбирать своё местоположение. Я в России, потому и выбрал её. Определить раскладку клавиатуры? Я думаю, что не стоит. Вручную укажем. Russia -> Russia -> Alt+Shift. Можно и другой комбинацией, но, по сути, это нам даже и не нужно. Далее пойдут какие-то загрузки, операции, будут какие-то прогрессбары — система будет готовиться к установке. Тут система спросит как её назвать. Я назвал, как видно на картинке, testserver. Можете сами выдумать что захотите — это непринципиально. Почему-то система решила, что я в Красноярске. А я не там. Выбираю «No» и далее «Yekaterinburg», поскольку я в Екатеринбурге. Если система правильно всё определила, то жмите «Yes», если нет, то выберите ваш часовой пояс. Формируем файловую систему. По-хорошему, надо в отдельные разделы выносить /home, /tmp, можно отказаться от свопа, но у нас не «настройка и кстановка линукса», а «как хоститься дома», так что доверимся всемогущему усановщику и выберем «Guided — use entire disk». Выберем на какой хард ставить систему. Как видно из картинки, у меня диск всего один и это виртуальный диск виртуальной машины. Вы выберите свой, если будет из чего выбирать. Если диск один, то, понятное дело, жмём Enter без лишних раздумий Предупреждение, что ВСЕ ДАННЫЕ БУДУТ УДАЛЕНЫ. Оно верное — действительно всё, что было на диске будет удалено. Соглашаемся. Начинается форматирование диска и установка системы. Это самый долгий процесс. Создаём пользователя. Он получит доступ к sudo и именно «под ним» мы будем всё делать. Введём и повторим пароль. Зашифровать домашнюю директорию? Я выбрал «нет». Далее снова идут некоторые настройки. Вы подключены через прокси? Нет. Оставляем поле пустым. Нужны автоматические обновления? Нет, не нужны. Какое ПО будем ставить? Выбираем только OpenSSH для удалённого управления сервером. Остальное поставим вручную. Поставить загрузчик GRUB? Да, поставить. Всё готово. Компьютер будет перезагружен. Надо будет после перезагрузки достать диск или флэшку, с которой всё ставилось Итак, система установлена. Можно отцепить от сервера монитор и клаву и поставить его подальше, чтобы не мешал. Подключаемся к серверу через SSH. Через консоль, если она у вас есть в системе, или через Putty, если у вас винда. Теперь обновим систему. Для начала получим список доступных для загрузки пакетов. sudo apt-get update обновим ПО sudo apt-get upgrade обновим систему sudo apt-get dist-upgrade Перезагрузим сервер. Теперь можно поставить полезные какие-нибудь утилиты. Мне полезен файломенеджер midnight commander, чтобы рулить файлами и системный монитор htop, который показывает как у нас в данный момент с нагрузкой дела обстоят. sudo apt-get install mc htop Теперь создадим папку, в которой будут храниться наши сайты. sudo mkdir /webs Создадим специального пользователя из-под которого всё будет испольняться при работе с сайтами sudo groupadd webs sudo useradd -g webs -s /bin/bash -d /webs webs поставим пользователю пароль passwd webs И поставим владельцем папки созданного нами пользователя sudo chown webs /webs sudo chgrp webs /webs Установим apache sudo apt-get install apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert Установим PHP sudo apt-get install php5-common php5 libapache2-mod-php5 php5-cli php5-cgi php5-mysql php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl libapache2-mod-fcgid libapache2-mod-fastcgi Установим MySQL sudo apt-get install mysql-client mysql-server libmysqlclient15-dev в процессе установки у нас будет спрошен пароль для рутового пользователя mysql, который надо будет придумать и ввести. Установим Phpmyadmin sudo apt-get install phpmyadmin Выберем в качестве веб-сервера установленный у нас apache. Далее нажмём «Да» на вопрос системы «сконфигурировать ли phpmyadmin», введём недавно придуманный нами рутовый пароль mysql, а так же придумаем и введём два раза пароль юзера phpmyadmin. Включим модуль rewrite в апаче sudo a2enmod rewrite Перезапустим апач sudo /etc/init.d/apache2 restart Теперь, если зайти на ваш сервер через http по IP-адресу, то увидим сообщение «It works!», которая нам скажет, что всё установилось удачно. http://ваш_ip/phpmyadmin — тут мы увидим phpmyadmin. Теперь привяжем к нашему серверу доменное имя. Зарегистрируем имя для начала. Допустим зарегистрировали example.com Я делаю это на сайте 2domains.ru — там дёшево и нормально. Ещё там можно использовать DNS-серверы reg.ru — они-то нам и нужны. Итак, зарегистрировали имя, нажали галочку «использовать DNS-серверы регистратора», потом в редакторе зон DNS добавляем A-запись: «пустое поле» IN A ваш_ip Через какое-то время ваш сервер будет доступен по доменному имени. Теперь создадим сайт на этом домене. для начала в файле /etc/apache2/envvars заменим строки export APACHE_RUN_USER=www-data export APACHE_RUN_GROUP=www-data следующими export APACHE_RUN_USER=webs export APACHE_RUN_GROUP=webs и сделаем sudo chown -R webs /var/lib/apache2 перезапустим апач. Создадим папки, в которых будут жить файлы, связанные с этим сайтом mkdir /webs/example.com mkdir /webs/example.com/www mkdir /webs/example.com/logs echo "Hello world!" > /webs/example.com/www/index.html Создадим файл /etc/apache2/sites-available/example.com следующего содержания <VirtualHost *> ServerName example.com ServerAdmin admin@example.com DocumentRoot /webs/example.com/www <Directory /> Options FollowSymLinks AllowOverride All </Directory> <Directory /webs/example.com/www/> Options FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ErrorLog /webs/example.com/logs/error.log. LogLevel warn CustomLog /webs/example.com/logs/access.log combined </VirtualHost> Добавим его sudo a2ensite example.com перезагрузим конфиг апача sudo /etc/init.d/apache2 reload Готово! Теперь (если DNS уже успели распостраниться) по адресу example.com будет доступен ваш сайт, который приветствует мир. Можно как на обычном хостинге создавать php-скрипты, которые будут нормально работать. Чтобы работала функция mail() в PHP, нам нужен почтовый сервер. sudo apt-get install postfix Добавим к этому FTP. sudo apt-get install proftpd Теперь отредактируем файл конфига /etc/proftpd/proftpd.conf — отредактируем там некоторые строки ListOptions "-la" DefaultRoot ~ перезапустим FTP-сервер /etc/init.d/proftpd restart Всё, теперь можно логиниться под юзером webs на ваш сервер через FTP. Вот и всё. Ещё раз повторюсь, что это только некоторые основы — сервер будет работать, но надо будет ещё озаботиться его безопасностью. Ещё можно будет оптимизировать серверное ПО, чтобы ресурсы нормально распределялись... Если ещё выберу время, то напишу что для этого надо и как это делается. Если кто-то заметил какие-то ошибки или есть какие-то вопросы — задавайте.
- 30 replies
-
- 10
-
Может, что-то типа такого '=?WINDOWS-1251?B?'.base64_encode($subject).'?='
-
Я не дизайер, но скажу вам, что надо учится, а не брать чужое за основу. Почитайте книжки, поучитесь где-нибудь, где учат дизайну, пораскиньте мозгами... Конечно, ничего плохого в просмотре чужих работ нет, но это не должно быть основой.
-
http://mobbit.info/item/2011/6/9/sony-nex-c3-samaya-malen-kaya-i-legkaya-fotokamera-so-smennymi-ob-ektivami-13-fotoГЫ Да, я думал про такие, но там хват неудобный, с длинными объективами будет поди вообще люто перевешивать, выбор объективов небольшой и нет видоискателя
-
Будто бы всё чётко. Мне как раз надо было что-то такое. Завтра на работе обязательно попробую со всех сторон
-
Да ладно? 18 мм даже на кропнутой матрице должно хватить, чтобы взять весьма широкий угол
-
mysqli_query делает запрос в БД. Возвращает false тогда, когда в запросе есть ошибка (в случает select) или что-то не сработало так, как надо (в случае delete или update). Так как ошибок в запросе быть не должно, то делать or die просто бессмысленно. А вот если в запросе есть ошибка, то надо принудительно удалить разработчика, который такие ошибки допускает. Двойные кавычки следует использовать, когда надо прямо в них вставить переменную или использовать \n и прочие невидимости. Работают они медленее, чем одинарные кавычки. Так что если используется конкатенация, то надо делать одинарные кавычки
-
Чего есть у меня: 1. Компьютеры. Мне очень нравятся процессоры AMD Phenom своей ценой, потому компы работают на них — один на 955, а второй на 1055. Памяти по 4 гига, но, похоже, маловато — своп грузится, так что надо будет добавлять. 2. Мониторы. Какие-то дешёвые самсунги — мне пофиг на всё, ибо вижу я в основном текст и больше ничего 3. Клавиатруа и мышь logitech mk 250 — в этом плане я аскетичен. 4. Стул. Я нашёл в магазине Metro очень прикольные стулья фирмы «Sigma» за смешные деньги — они почти все прикольные. 5. Планшет. Так как я ничего не рисую, а только иногда немного ретуширую, то у меня самый простенький планшет «Wacom Bamboo Pen & Touch» 6. Фотоаппарат. Самый простой из зеркальных — Nikon D5000. Простой потому что я не фотограф, а зеркальный потому что надо, чтобы можно было объективы менять и были полные возможности для ручной настройки. 7. Наушники. Какие-то панасоник — самые дешёвые, наверное. Я не аудиофил, так что мне пофиг. 8. Стол. Какой-то на заказ. Даже не знаю как описать. Деревянный такой. С выдвижной штукой для клавиатуры. 9. Телефон. Архаичный Eten Glofiish X600 Больше по-моему ничего у меня и нету. Я вообще не люблю кучи всякой электорники и никогда не гнался за новинками и хитами — только всё по делу и не более того.
-
Я убеждённый линуксоид и не раз холиварил на темы «windows vs. linux», но считаю, что для верстальщика нужен виндоуз. Причины две: 1. Во-первых, как правильно заметили, фотошоп. Его нет для линукса, а вайн это костыли и не 100% работоспособность. Гимп хорош, но до фотошопа ещё далеко. 2. ИЕ — как бы нам этого не хотелось, но он был есть и будет, а всякие ie4linux — костыли чистой воды
-
Насчёт гета согласен — привык, что фсе формы постом всегда сабмитю. $c в моём примере — переменная, которая является ссылкой на коннект. mysqli_query("INSERT INTO `tablename` SET `first`='".$_GET['first']."'") or die(mysqli_error()); вот за это вообще надо сразу убивать. Причины две. Первая: если всё равно используете конкатенацию, то нафиг двойные кавычки? Вторая: зачем die и mysqli_error? Мало того, что конструкция совершенно дебильная и попов-стайл, так ещё, если она сработает, то такого разработчика надо сразу гнать пинком под зад. Никогда mysqli_query не должно выдавать ошибки.
-
Окошуи на Jquery с затемнением порекомендуйте плагин
Veseloff replied to generator2003's question in JavaScript
А когда это у нас 8кб стало много? -
if (isset($_POST['first'])) mysqli_query($c, "INSERT INTO `tablename` SET `first`='YES!!!'");
-
return возвращает значение. this ссылается на объект, из которого вызывается.
-
Очевидно, что это всё оттого, что не существует A-записи в DNS www.forum. Это раз. А второе это то, что нафиг этот www вообще нужен.
-
Вообще никак этого сделать нельзя. Любые ухищрения могут привести к тому, что простые пользователи окажутся «в бане». Любые фильтры по юзерагенту не спасут — он легко подменяется.
-
Слушай, я вот не помню откуда знаю, но вот первое, что у меня всплыло в голове про защиту от ддоса, это вот этот адрес. Поспрашивал только что знакомых, которые занимаются ИБТС — ни один не работает с фряхой, а такие проблемы решают «более аппаратно», т.е. на уровне железного маршрутизатора и его возможностей.