Nginx+apache22+PHP 5.2+ffmpeg+flvtool2

Обсуждения, связанные со статьями.

Nginx+apache22+PHP 5.2+ffmpeg+flvtool2

Непрочитанное сообщение server801 » 30 сен 2010, 21:40

Весной этого года для своего города подумал о проекте для своего родного города: создать свою Социальную Сеть , где можно крутить ролики, создавать альбомы, слушать музыку он-лайн и так далее . В качестве движка выбрал на то время версию socengine 3.20. Для начала был обычный пентиум 2.6, 2 гига рамы и хард на 120 гигов. Водрузил на сервер под управлением CentOS , помучался с кривыми репами, вроде заработало. Желания особого оставаться не было - было принято решение ставить на любимую и " правильную " ОС FreeBSD :) Итак , начнем
Установка Nginx+apache22+PHP 5.2+ffmpeg+flvtool2 OC FreeBSD AMD64

Обновляем сырцы и порты любимой встроенной утилитой csup пользуясь великолепной статьей http://www.ignix.ru/public/local_remote_update_freebsd


Прежде чем ставить софт идем править make.conf для необходимых флагов компиляции

Код: Выделить всё
cat /etc/make.conf
NO_GAMES= true          # do not build games (games/ subdir)
NO_INET6= true          # do not build IPv6 related programs and libraries
WITHOUT_X11=yes
WITHOUT_CUPS=yes
NO_GUI=yes
NO_X11=yes
NO_X=yes
# для сервера
DEFAULT_MYSQL_VER=50
PORTSDIR?=      /usr/ports
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-server
WITH_CHARSET=utf8
WITH_COLLATION=utf8_bin
#WITH_LINUXTHREADS=yes
BUILD_OPTIMIZED=yes
BUILD_STATIC=yes
.endif
# для клиента
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-client
WITH_CHARSET=utf8
WITH_COLLATION=utf8_bin
BUILD_OPTIMIZED=yes
.endif

Кодировку выбрал UTF-8 для MYSQL, так как с ней не было проблем потом при работе движка.
Далее идем собирать apache22+nginx-devel+php5.2+mysql5.0+memcached. Сразу обращу внимание на то, что не стоит ставить версию пхп 5.3, так как при работе наблюдались глюки и сам первый раз напоролся на эти грабли.
Ставим апач
Код: Выделить всё
cd /usr/ports/www/apache22 && make install clean

собираем вот с такими опциями
Код: Выделить всё
     THREADS=on "Enable threads support in APR"
     MYSQL=off "Enable MySQL support for apr-dbd"
     PGSQL=off "Enable PostgreSQL support for apr-dbd"
     SQLITE=off "Enable SQLite support for apr-dbd"
     IPV6=on "Enable IPv6 support"
     BDB=off "Enable BerkeleyDB dbm"
     AUTH_BASIC=on "Enable mod_auth_basic"
     AUTH_DIGEST=on "Enable mod_auth_digest"
     AUTHN_FILE=on "Enable mod_authn_file"
     AUTHN_DBD=off "Enable mod_authn_dbd"
     AUTHN_DBM=on "Enable mod_authn_dbm"
     AUTHN_ANON=on "Enable mod_authn_anon"
     AUTHN_DEFAULT=on "Enable mod_authn_default"
     AUTHN_ALIAS=on "Enable mod_authn_alias"
     AUTHZ_HOST=on "Enable mod_authz_host"
     AUTHZ_GROUPFILE=on "Enable mod_authz_groupfile"
     AUTHZ_USER=on "Enable mod_authz_user"
     AUTHZ_DBM=on "Enable mod_authz_dbm"
     AUTHZ_OWNER=on "Enable mod_authz_owner"
     AUTHZ_DEFAULT=on "Enable mod_authz_default"
     CACHE=on "Enable mod_cache"
     DISK_CACHE=on "Enable mod_disk_cache"
     FILE_CACHE=on "Enable mod_file_cache"
     MEM_CACHE=off "Enable mod_mem_cache"
     DAV=on "Enable mod_dav"
     DAV_FS=on "Enable mod_dav_fs"
     BUCKETEER=off "Enable mod_bucketeer"
     CASE_FILTER=off "Enable mod_case_filter"
     CASE_FILTER_IN=off "Enable mod_case_filter_in"
     EXT_FILTER=off "Enable mod_ext_filter"
     LOG_FORENSIC=off "Enable mod_log_forensic"
     OPTIONAL_HOOK_EXPORT=off "Enable mod_optional_hook_export"
     OPTIONAL_HOOK_IMPORT=off "Enable mod_optional_hook_import"
     OPTIONAL_FN_IMPORT=off "Enable mod_optional_fn_import"
     OPTIONAL_FN_EXPORT=off "Enable mod_optional_fn_export"
     LDAP=off "Enable mod_ldap"
     AUTHNZ_LDAP=off "Enable mod_authnz_ldap"
     ACTIONS=on "Enable mod_actions"
     ALIAS=on "Enable mod_alias"
     ASIS=on "Enable mod_asis"
     AUTOINDEX=on "Enable mod_autoindex"
     CERN_META=on "Enable mod_cern_meta"
     CGI=on "Enable mod_cgi"
     CHARSET_LITE=on "Enable mod_charset_lite"
     DBD=off "Enable mod_dbd"
     DEFLATE=on "Enable mod_deflate"
     DIR=on "Enable mod_dir"
     DUMPIO=on "Enable mod_dumpio"
     ENV=on "Enable mod_env"
     EXPIRES=on "Enable mod_expires"
     HEADERS=on "Enable mod_headers"
     IMAGEMAP=on "Enable mod_imagemap"
     INCLUDE=on "Enable mod_include"
     INFO=on "Enable mod_info"
     LOG_CONFIG=on "Enable mod_log_config"
     LOGIO=on "Enable mod_logio"
     MIME=on "Enable mod_mime"
     MIME_MAGIC=on "Enable mod_mime_magic"
     NEGOTIATION=on "Enable mod_negotiation"
     REWRITE=on "Enable mod_rewrite"
     SETENVIF=on "Enable mod_setenvif"
     SPELING=on "Enable mod_speling"
     STATUS=on "Enable mod_status"
     UNIQUE_ID=on "Enable mod_unique_id"
     USERDIR=on "Enable mod_userdir"
     USERTRACK=on "Enable mod_usertrack"
     VHOST_ALIAS=on "Enable mod_vhost_alias"
     FILTER=on "Enable mod_filter"
     VERSION=on "Enable mod_version"
     PROXY=on "Enable mod_proxy"
     PROXY_CONNECT=on "Enable mod_proxy_connect"
     PATCH_PROXY_CONNECT=on "Patch proxy_connect SSL support"
     PROXY_FTP=off "Enable mod_proxy_ftp"
     PROXY_HTTP=on "Enable mod_proxy_http"
     PROXY_AJP=off "Enable mod_proxy_ajp"
     PROXY_BALANCER=off "Enable mod_proxy_balancer"
     PROXY_SCGI=off "Enable mod_proxy_scgi"
     SSL=on "Enable mod_ssl"
     SUEXEC=on "Enable mod_suexec"
     SUEXEC_RSRCLIMIT=off "SuEXEC rlimits based on login class"
     REQTIMEOUT=on "Enable mod_reqtimeout"
     CGID=on "Enable mod_cgid"


далее PHP 5.2

Код: Выделить всё
cd /usr/ports/lang/php52 && make install clean


опции

Код: Выделить всё
     CLI=on "Build CLI version"
     CGI=on "Build CGI version"
     APACHE=on "Build Apache module"
     DEBUG=off "Enable debug"
     SUHOSIN=on "Enable Suhosin protection system (not for jails)"
     MULTIBYTE=off "Enable zend multibyte support"
     IPV6=on "Enable ipv6 support"
     MAILHEAD=off "Enable mail header patch"
     REDIRECT=off "Enable force-cgi-redirect support (CGI only)"
     DISCARD=off "Enable discard-path support (CGI only)"
     FASTCGI=on "Enable fastcgi support (CGI only)"
     FPM=off "Enable fastcgi process manager (CGI only)"
     PATHINFO=on "Enable path-info-check support (CGI only)"


Ставим модуль rpaf
Код: Выделить всё
/usr/ports/www/mod_rpaf2 && make install clean



далее доставляем модули пхп

Код: Выделить всё
cd /usr/ports/lang/php52-extensions && make install clean


опции

Код: Выделить всё
     BCMATH=off "bc style precision math functions"
     BZ2=on "bzip2 library support"
     CALENDAR=off "calendar conversion support"
     CTYPE=on "ctype functions"
     CURL=on "CURL support"
     DBA=on "dba support"
     DBASE=off "dBase library support"
     DOM=on "DOM support"
     EXIF=on "EXIF support"
     FILEINFO=on "fileinfo support"
     FILTER=on "input filter support"
     FRIBIDI=on "FriBidi support"
     FTP=on "FTP support"
     GD=on "GD library support"
     GETTEXT=on "gettext library support"
     GMP=off "GNU MP support"
     HASH=on "HASH Message Digest Framework"
     ICONV=on "iconv support"
     IMAP=on "IMAP support"
     INTERBASE=off "Interbase 6 database support (Firebird)"
     JSON=on "JavaScript Object Serialization support"
     LDAP=off "OpenLDAP support"
     MBSTRING=on "multibyte string support"
     MCRYPT=on "Encryption support"
     MHASH=on "Crypto-hashing support"
     MING=off "ming shockwave flash support"
     MSSQL=on "MS-SQL database support"
     MYSQL=on "MySQL database support"
     MYSQLI=off "MySQLi database support"
     NCURSES=off "ncurses support (CLI only)"
     ODBC=off "unixODBC support"
     OPENSSL=on "OpenSSL support"
     PCNTL=off "pcntl support (CLI only)"
     PCRE=on "Perl Compatible Regular Expression support"
     PDF=on "PDFlib support (implies GD)"
     PDO=on "PHP Data Objects Interface (PDO)"
     PDO_SQLITE=on "PDO sqlite driver"
     PDO_MYSQL=on "PDO mysql driver"
     PGSQL=off "PostgreSQL database support"
     POSIX=on "POSIX-like functions"
     PSPELL=off "pspell support"
     READLINE=off "readline support (CLI only)"
     RECODE=off "recode support"
     SESSION=on "session support"
     SHMOP=on "shmop support"
     SIMPLEXML=on "simplexml support"
     SNMP=off "SNMP support"
     SOAP=on "SOAP support"
     SOCKETS=on "sockets support"
     SPL=on "Standard PHP Library"
     SQLITE=on "sqlite support"
     SYBASE_CT=off "Sybase database support"
     SYSVMSG=off "System V message support"
     SYSVSEM=off "System V semaphore support"
     SYSVSHM=off "System V shared memory support"
     TIDY=off "TIDY support"
     TOKENIZER=on "tokenizer support"
     WDDX=off "WDDX support (implies XML)"
     XML=on "XML support"
     XMLREADER=on "XMLReader support"
     XMLRPC=on "XMLRPC-EPI support"
     XMLWRITER=on "XMLWriter support"
     XSL=off "XSL support (Implies DOM)"
     YAZ=on "YAZ support (ANSI/NISO Z39.50)"
     ZIP=on "ZIP support"
     ZLIB=on "ZLIB support"


Ставим мускуль

Код: Выделить всё
/usr/ports/databases/mysql50-server && make install clean


Далее настроим сам мускуль и даем пароль на суперпользователя
Код: Выделить всё
/usr/local/bin/mysql_install_db
chown -R mysql /var/db/mysql/
cp /usr/local/share/mysql/my-large.cnf  /usr/local/etc/my.cnf
/usr/local/etc/rc.d/mysql-server onestart
/usr/local/bin/mysqladmin -u root password 'новый пароль'


Конфиг муси
Код: Выделить всё
# The following options will be passed to all MySQL clients
[client]
#password       = your_password
port            = 3306
socket          = /tmp/mysql.sock

# Here follows entries for some specific programs

# The MySQL server
[mysqld]
port            = 3306
socket          = /tmp/mysql.sock
skip-locking
key_buffer = 256M
max_allowed_packet = 1M
table_cache = 256
sort_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 4M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size= 16M
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 2

# Don't listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (via the "enable-named-pipe" option) will render mysqld useless!
#
#skip-networking

# Disable Federated by default
skip-federated

# Replication Master Server (default)
# binary logging is required for replication
log-bin=mysql-bin

# required unique id between 1 and 2^32 - 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id       = 1

# Replication Slave (comment out master section to use this)
#
# To configure this host as a replication slave, you can choose between
# two methods :
#
# 1) Use the CHANGE MASTER TO command (fully described in our manual) -
#    the syntax is:
#
#    CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
#    MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
#
#    where you replace <host>, <user>, <password> by quoted strings and
#    <port> by the master's port number (3306 by default).
#
#    Example:
#
#    CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
#    MASTER_USER='joe', MASTER_PASSWORD='secret';
#
# OR
#
# 2) Set the variables below. However, in case you choose this method, then
#    start replication for the first time (even unsuccessfully, for example
#    if you mistyped the password in master-password and the slave fails to
#    connect), the slave will create a master.info file, and any later
#    change in this file to the variables' values below will be ignored and
#    overridden by the content of the master.info file, unless you shutdown
#    the slave server, delete master.info and restart the slaver server.
#    For that reason, you may want to leave the lines below untouched
#    (commented) and instead use CHANGE MASTER TO (see above)
#
# required unique id between 2 and 2^32 - 1
# (and different from the master)
# defaults to 2 if master-host is set
# but will not function as a slave if omitted
#server-id       = 2
#
# The replication master for this slave - required
#master-host     =   <hostname>
#
# The username the slave will use for authentication when connecting
# to the master - required
#master-user     =   <username>
#
# The password the slave will authenticate with when connecting to
# the master - required
#master-password =   <password>
#
# The port the master is listening on.
# optional - defaults to 3306
#master-port     =  <port>
#
# binary logging - not required for slaves, but recommended
#log-bin=mysql-bin

# Point the following paths to different dedicated disks
#tmpdir         = /tmp/
#log-update     = /path-to-dedicated-directory/hostname

# Uncomment the following if you are using BDB tables
#bdb_cache_size = 64M
#bdb_max_lock = 100000

# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /var/db/mysql/
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = /var/db/mysql/
#innodb_log_arch_dir = /var/db/mysql/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
#innodb_buffer_pool_size = 256M
#innodb_additional_mem_pool_size = 20M
# Set .._log_file_size to 25 % of buffer pool size
#innodb_log_file_size = 64M
#innodb_log_buffer_size = 8M
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[isamchk]
key_buffer = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout



Далее ставить саму утилиту для обработки видео ffmpeg. Но тут вылезли грабли.
Код: Выделить всё
cd /usr/ports/multimedia/ffmpeg

Версия в портах

Код: Выделить всё
Port:   ffmpeg-0.6_3,1
Path:   /usr/ports/multimedia/ffmpeg
Info:   Realtime audio/video encoder/converter and streaming server
Maint:  mm@FreeBSD.org
B-deps: binutils-2.20.1_3 damageproto-1.2.0 dri2proto-2.2 expat-2.0.1_1 faad2-2.7_2,1 fixesproto-4.1.1 gettext-0.18_1 gmake-3.81_4 gpac-libgpac-0.4.5_4,1 jpeg-8_3 kbproto-1.0.4 libGL-7.4.4 libGLU-7.4.4 libX11-1.3.3,1 libXau-1.0.5 libXdamage-1.1.2 libXdmcp-1.0.3 libXext-1.1.1,1 libXfixes-4.0.4 libXxf86vm-1.1.0 libdrm-2.4.12_1 libiconv-1.13.1_1 libogg-1.2.0,4 libpthread-stubs-0.3_3 libtheora-1.1.1_2 libvorbis-1.3.1,3 libvpx-0.9.1 libxcb-1.6 orc-0.4.8 perl-5.10.1_2 pkg-config-0.25 png-1.4.3 schroedinger-1.0.9 texi2html-1.82,1 x264-0.0.20100624 xextproto-7.1.1 xf86vidmodeproto-2.3 xproto-7.0.16 xvid-1.2.2_1,1 yasm-1.1.0
R-deps: damageproto-1.2.0 dri2proto-2.2 expat-2.0.1_1 faad2-2.7_2,1 fixesproto-4.1.1 gpac-libgpac-0.4.5_4,1 jpeg-8_3 kbproto-1.0.4 libGL-7.4.4 libGLU-7.4.4 libX11-1.3.3,1 libXau-1.0.5 libXdamage-1.1.2 libXdmcp-1.0.3 libXext-1.1.1,1 libXfixes-4.0.4 libXxf86vm-1.1.0 libdrm-2.4.12_1 libogg-1.2.0,4 libpthread-stubs-0.3_3 libtheora-1.1.1_2 libvorbis-1.3.1,3 libvpx-0.9.1 libxcb-1.6 orc-0.4.8 pkg-config-0.25 png-1.4.3 schroedinger-1.0.9 x264-0.0.20100624 xextproto-7.1.1 xf86vidmodeproto-2.3 xproto-7.0.16 xvid-1.2.2_1,1
WWW:    http://ffmpeg.mplayerhq.hu/

Эта версия у меня не все форматы кодировала, может быть из-за того что ключи при конвертировании поменялись, может надо было лезть в код и править что то, но джедаи поступают иначе :) Откатываемся на стабильную и рабочую версию ffmpeg при помощи утилиты portdowngrade

Код: Выделить всё
/usr/ports/ports-mgmt/portdowngrade
make DEFAULT_CVS_SERVER="anoncvs@anoncvs1.FreeBSD.org:/home/ncvs" install clean


далее откатываем нам нужный порт на нужную версию

Код: Выделить всё
cd /usr/ports
portdowngrade multimedia/ffmpeg

portdowngrade 0.6 by Heiner Eichmann
Please note, that nothing is changed in the ports tree
unless it is explicitly permitted in step 6!

Seeking port multimedia/ffmpeg ...

Found several matches:
1: multimedia/ffmpeg
2: multimedia/ffmpeg-devel
3: multimedia/ffmpeg2theora
4: multimedia/ffmpegthumbnailer

Please choose one: 1

Downgrading port: multimedia/ffmpeg

Step 1: Checking out port from CVS repository
CVS root directory: anoncvs@anoncvs1.FreeBSD.org:/home/ncvs

Step 2: Reading the port history from the CVS repository

Step 3: Analyzing the port history from the CVS repository
Step 4: Load port version numbers and present results
Keys: <space> : next page                      d : details
            p : previous page
      <enter> : leave presentation and downdgrade if wanted
============================================================================================================================
number         date         portversion  comment
    1  2010/08/01 20:41:25  0.6_3        - Fix architecture recognition [1]
    2  2010/07/27 18:53:42  0.6_2        Add VP8 codec support via libvpx and enable by default
    3  2010/07/25 16:18:15  0.6_1        Add missing files to PORTDOCS
    4  2010/07/24 16:38:14  0.6          - Update ffmpeg to 0.6
    5  2010/07/24 15:30:14  0.5.2_3      - Update x264 to 20100624 (build 98)
    6  2010/06/09 16:38:59  0.5.2_2      - Support SSSE3 by default
    7  2010/06/09 16:24:45  0.5.2_2      - Fix CFLAGS
    8  2010/06/06 20:43:54  0.5.2_1      Bump PORTREVISION for ports that depend on libogg, directly or indirectly
    9  2010/05/30 09:17:59  0.5.2        - Update to 0.5.2
   10  2010/04/21 12:56:46  0.5.1_3      - Update x264 to shared library version 85
   11  2010/04/18 20:41:52  0.5.1_2      - Add ssse3 support to OPTIONS
   12  2010/04/18 12:07:45  0.5.1_2      - Fix mmx/sse support in amd64 package [1]
   13  2010/03/27 00:13:31  0.5.1_1      Begin the process of deprecating sysutils/rc_subr by
   14  2010/03/24 18:44:18  0.5.1_1      - Update schroedinger to 1.0.9
   15  2010/03/10 14:03:01  0.5.1        - Fix configure option if building WITH_FAAC
   16  2010/03/10 11:00:00  0.5.1        - Update to 0.5.1
   17  2010/01/19 11:24:04  0.5_2        - Unbreak build if recent multimedia/v4l-compat is installed
   18  2009/12/31 11:15:30  0.5_2        - Move x11grab to OPTIONS as this requires x11, disable by default
   19  2009/10/16 11:24:04  0.5_1        - fix VUPEN/ADV-2009-2678
   20  2009/08/12 10:30:16  0.5          - Add ffmpeg-devel to CONFLICTS
   21  2009/08/12 08:43:17  0.5          - Update ffmpeg to 0.5
   22  2009/07/06 21:25:53  unknown      Bump PORTREVISION after libogg and libvorbisfile major version increment.
   23  2009/03/31 13:58:16  unknown      - Update x264 to 0.0.20081218
   24  2009/03/24 16:58:56  unknown      - Add MAKE_JOBS_SAFE to support SMP compilation
   25  2009/03/16 19:38:08  unknown      - Fix 4xm Processing Memory Corruption Vulnerability
   26  2009/02/21 15:51:14  unknown      - Chase audio/faad shlib bump
   27  2008/09/07 03:31:58  unknown      Force ffserver in to the background.
   28  2008/09/05 15:20:46  unknown      - Fix OPTIMIZED_CFLAGS option on gcc 4.2 (at least): explicitly disable
   29  2008/08/17 02:58:21  unknown      Fix build when ARH_NV or ARM_WB is defined
   30  2008/08/14 22:08:02  unknown      Enable the img_resample (old) code even if ffmpeg is built with libswscale
   31  2008/08/11 04:33:45  unknown      Append -I${includedir}/ffmpeg on to the Cflags in the pkg-config files.
   32  2008/08/11 02:41:45  unknown      Fix the plist after the recent commit.
   33  2008/08/10 19:46:42  unknown      Build libswscale by default once again.  I could not reproduce any problems
   34  2008/08/05 03:02:39  unknown      Fix compat headers installation, bump the PORTREVISION.
   35  2008/07/28 21:17:38  unknown      Install all the ffmpeg headers in a compat location to fix build of many ports
   36  2008/07/27 23:51:20  unknown      Update to 2008-07-27 snapshot
   37  2008/04/27 10:22:56  unknown      - move knobs into OPTIONS, make (almost) everything selectable
Total lines: 124. Command:
Enter version number to change port to (0: exit): 5


Step 5: Checking out choosen date of the port from the CVS repository

Step 6: Modifying the port
Port: multimedia/ffmpeg
at : 2010/07/24 15:30:14
Type 'yes' to bring the port to the state of the date above
or 'no' to exit without changing anything. Note, that this only changes
the port, not the installed software! yes or no:yes

The port has been set to the selected version. Install it if you wish.
If you have portupgrade installed, you should run

portsdb -Uu

now, to see the changes in the ports database. In any case

portupgrade -f ffmpeg

will install the changed port. Note: if you run cvsup, the port
is changed back to the choosen label!


проверяем что получилось

Код: Выделить всё
PORTNAME=       ffmpeg
PORTVERSION=    0.5.2
PORTREVISION=   3


ставим

Код: Выделить всё
make install clean


опции

Код: Выделить всё
AMR_NB=off "AMR Narrow Band encoder"
     AMR_WB=off "AMR Wide Band encoder"
     DIRAC=off "Dirac codec via libdirac"
     FAAC=on "FAAC mp4/aac audio encoder"
     FAAD=on "FAAD mp4/aac audio decoder"
     FFSERVER=on "Build and install ffserver"
     GSM=off "GSM audio codec"
     IPV6=on "IPV6 network support"
     LAME=on "LAME MP3 encoder"
     OPENJPEG=on "JPEG 2000 decoder"
     OPTIMIZED_CFLAGS=on "Additional optimizations"
     SCHROEDINGER=on "Dirac codec via libschroedinger"
     SDL=off "SDL support (build ffplay)"
     SPEEX=off "Speex audio decoder"
     SSSE3=on "Enable ssse3 support"
     THEORA=on "Theora encoder (implies OGG)"
     VHOOK=off "Video hook support"
     VORBIS=on "Vorbis encoder via libvorbis (implies OGG)"
     X11GRAB=off "enable X11 grabbing"
     X264=on "H.264 encoder"
     XVID=on "Xvid encoder via xvidcore"


Будьте особо внимательны при выборе опций, не стоит спешить, тогда все работать будет корректно good

Далее установим модуль для пхп ffmpeg

Код: Выделить всё
cd /usr/ports/graphics/php5-ffmpeg && make install clean


и утилиту flvtool2, которая будет занимать созданием превьюшек и записью метаданных видео

Код: Выделить всё
cd /usr/ports/multimedia/ruby-flvtool2
make install clean


Ставим memcached

Код: Выделить всё
cd /usr/ports/databases/memcached && make install clean


Устанавливаем расширение для php

Код: Выделить всё
cd /usr/ports/databases/pecl-memcache && make install clean


Ставим nginx

Код: Выделить всё
cd /usr/ports/www/nginx-devel && make install clean


опции

Код: Выделить всё
DEBUG=off "Enable nginx debugging"
     DEBUGLOG=off "Enable debug log (--with-debug)"
     FILE_AIO=off "Enable file aio"
     IPV6=off "Enable IPv6"
     GOOGLE_PERFTOOLS=off "Enable google perftools module"
     HTTP_MODULE=on "Enable HTTP module"
     HTTP_ADDITION_MODULE=on "Enable http_addition module"
     HTTP_CACHE_MODULE=on "Enable http_cache module"
     HTTP_DAV_MODULE=off "Enable http_webdav module"
     HTTP_FLV_MODULE=on "Enable http_flv module"
     HTTP_GEOIP_MODULE=off "Enable http_geoip module"
     HTTP_GZIP_STATIC_MODULE=on "Enable http_gzip_static module"
     HTTP_IMAGE_FILTER_MODULE=on "Enable http_image_filter module"
     HTTP_PERL_MODULE=on "Enable http_perl module"
     HTTP_RANDOM_INDEX_MODULE=on "Enable http_random_index module"
     HTTP_REALIP_MODULE=on "Enable http_realip module"
     HTTP_REWRITE_MODULE=on "Enable http_rewrite module"
     HTTP_SECURE_LINK_MODULE=off "Enable http_secure_link module"
     HTTP_SSL_MODULE=on "Enable http_ssl module"
     HTTP_STATUS_MODULE=on "Enable http_stub_status module"
     HTTP_SUB_MODULE=on "Enable http_sub module"
     HTTP_XSLT_MODULE=off "Enable http_xslt module"
     MAIL_MODULE=on "Enable IMAP4/POP3/SMTP proxy module"
     MAIL_IMAP_MODULE=on "Enable IMAP4 proxy module"
     MAIL_POP3_MODULE=on "Enable POP3 proxy module"
     MAIL_SMTP_MODULE=on "Enable SMTP proxy module"
     MAIL_SSL_MODULE=on "Enable mail_ssl module"
     WWW=on "Enable html sample files"
     CACHE_PURGE_MODULE=on "3rd party cache_purge module"
     ECHO_MODULE=on "3rd party echo module"
     HEADERS_MORE_MODULE=off "3rd party headers_more module"
     HTTP_ACCEPT_LANGUAGE=on "3rd party accept_language module"
     HTTP_ACCESSKEY_MODULE=off "3rd party http_accesskey module"
     HTTP_AUTH_PAM_MODULE=off "3rd party http_auth_pam module"
     HTTP_AUTH_REQ_MODULE=on "3rd party http_auth_request module"
     HTTP_EVAL_MODULE=off "3rd party eval module"
     HTTP_FANCYINDEX_MODULE=on "3rd party http_fancyindex module"
     HTTP_GUNZIP_FILTER=on "3rd party http_gunzip_filter module"
     HTTP_MOGILEFS_MODULE=off "3rd party mogilefs module"
     HTTP_MP4_H264_MODULE=on "3rd party mp4/h264 module"
     HTTP_NOTICE_MODULE=on "3rd party notice module"
     HTTP_PUSH_MODULE=on "3rd party push module"
     HTTP_REDIS_MODULE=off "3rd party http_redis module"
     HTTP_RESPONSE_MODULE=on "3rd party http_response module"
     HTTP_UPLOAD_MODULE=on "3rd party upload module"
     HTTP_UPLOAD_PROGRESS=on "3rd party uploadprogress module"
     HTTP_UPSTREAM_FAIR=on "3rd party upstream fair module"
     HTTP_UPSTREAM_HASH=on "3rd party upstream hash module"
     HTTP_UPSTREAM_KEEPALIVE=on "3rd party upstream keepalive module"
     HTTP_ZIP_MODULE=on "3rd party http_zip module"
     MEMC_MODULE=on "3rd party memc (memcached) module"
     PASSENGER_MODULE=off "3rd party passenger module"
     SLOWFS_CACHE_MODULE=on "3rd party slowfs_cache module"
     SUPERVISORD_MODULE=off "3rd party supervisord module"
     UDPLOG_MODULE=off "3rd party udplog (syslog) module"



Итак , приступим к настройке связки nginx+apache. Принцип работы такой:
frontend-backend.jpg


1. Настроим конфиг апача и приведем к такому виду, изменим некоторые параметры:
Код: Выделить всё
ee /usr/local/etc/apache22/httpd.conf
Listen 88 # меняем порт , который будет слушать апач

#<Directory />  # Эту секцию закомментим
#    AllowOverride None
#    Order deny,allow
#    Deny from all
#</Directory>

<IfModule dir_module>
    DirectoryIndex index.html index.php # добавляем тип расширения
</IfModule>
LoadModule rpaf_module        libexec/apache22/mod_rpaf.so # После установки, строка закомментирована.
Include etc/apache22/extra/httpd-vhosts.conf # расскоментим для виртуальных хостов
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 127.0.0.1 IP сервера
RPAFheader X-Forwarded-For

AddType application/x-httpd-php .php## включаем пхп
AddType application/x-httpd-php-source .phps


Идем настраивать виртульный хост

Код: Выделить всё
ee /usr/local/etc/apache22/extra/httpd-vhosts.conf


меняем в конфиге

Код: Выделить всё
NameVirtualHost 127.0.0.1:88
<VirtualHost 127.0.0.1:88>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "/usr/local/www/domain"
    ServerName domain
    ServerAlias www.domain
    ErrorLog "/var/log/domain-error_log"
    CustomLog "/var/log/domain-access_log" common
</VirtualHost>


На этом настройка закончена. Далее идет настраивать Nginx
В нем внесем основные параметры, а виртуальные хосты вынесем в другую директорию, например vhosts

Код: Выделить всё
mkdir /usr/local/etc/nginx/vhosts
ee /usr/local/etc/nginx/nginx.conf


nginx.conf

Код: Выделить всё
# юзер от кого запущен nginx
user  www www;
# количество воркеров как и количество ядер
worker_processes 2;
worker_priority -5;
worker_rlimit_nofile 51200;

error_log  logs/error.log info;

#pid        logs/nginx.pid;

events {
# число одновременных коннектов
    worker_connections  2000;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] $status '
                      '"$request" $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "http_x_forwarded_for"';

    access_log  logs/access.log  main;

sendfile on;
tcp_nopush on;
tcp_nodelay on;
send_lowat 12000;

client_header_timeout  3m;
client_body_timeout    3m;
send_timeout           3m;
keepalive_timeout  65;
client_header_buffer_size    1k;
large_client_header_buffers  4 4k;

output_buffers   4 32k;

#Compressing
gzip on;
proxy_send_timeout   90;
proxy_read_timeout   90;
proxy_buffer_size    8k;
proxy_buffers     16 64k;
proxy_buffering on;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 10m;
#proxy_connect_timeout 120s;
proxy_redirect     off;


include  vhosts/*.conf;


Топаем в vhosts и создаем конфиг для виртуалхоста

Код: Выделить всё
cd vhosts
ee domain.conf


пример моей конфигурации

Код: Выделить всё
server {
        listen       80;
        server_name  domain.org www.domain.org;

        access_log  logs/domain.org.access.log  main;
        open_file_cache             max=100000 inactive=40s;
        open_file_cache_valid       60s;
        open_file_cache_min_uses    2;
        open_file_cache_errors      on;

        # Main location
        location / {
            proxy_pass         http://127.0.0.1:88/;
            proxy_redirect     off;

            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

            client_max_body_size       1000m;
            client_body_buffer_size    128k;

            proxy_connect_timeout      90;
            proxy_send_timeout         90;
            proxy_read_timeout         90;

            proxy_buffer_size          4k;
            proxy_buffers              4 32k;
            proxy_busy_buffers_size    64k;
            proxy_temp_file_write_size 10m;
        }
## Эта директива отвечает за отдачу стриминга видео
        location ~ \.flv$ {
        flv;
        }
        # То что отдаем обрабатывать nginx, все что не попало , отдает апач
        location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|flv|rtf|js|swf|iso)$ {
            root   /usr/local/www/domain;
        }

    }


Ставим ускоритель eaccelerator

Код: Выделить всё
cd /usr/ports/www/eaccelerator && make install clean


далее создаем директорию для кеша и назначаем права

Код: Выделить всё
root# mkdir /var/eaccelerator
root# chown www:www /var/eaccelerator
root# chmod 0700 /var/eaccelerator


Вносим изменения в php.ini

Код: Выделить всё
cd /usr/local/etc
cp php.ini-dist php.ini
ee php.ini


И вносим параметры для включения модуля

Код: Выделить всё
zend_extension="/usr/local/lib/php/20060613/eaccelerator.so"
eaccelerator.enable="1"
eaccelerator.shm_size="128"
eaccelerator.cache_dir="/var/eaccelerator"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max = "0"
eaccelerator.shm_ttl="3600"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"


Скоро уже завершение и приступаем к концовке настройки нашего сервера, идем править rc.conf для внесения нужным нам записей

Код: Выделить всё
apache22_enable="YES"
accf_http_load="YES"
mysql_enable="YES"
memcached_enable="YES"
memcached_flags="-l 127.0.0.1"
nginx_enable="YES"


Тюним сервер : sysctl.conf

Код: Выделить всё
kern.sync_on_panic=1
kern.coredump=0
security.bsd.conservative_signals=1
security.bsd.unprivileged_proc_debug=0
security.bsd.unprivileged_read_msgbuf=0
security.bsd.unprivileged_get_quota=0
kern.ipc.shmmax=134217728
kern.ipc.shmall=32768
kern.ipc.semmap=256
kern.ipc.nmbclusters=262144
#########
kern.ipc.somaxconn=4096

# Shared memory // 7.2+ can use shared memory > 2Gb
kern.ipc.shmmax=2147483648
# Sockets
kern.ipc.maxsockets=204800
# Do not use lager sockbufs on 8.0
# ( http://old.nabble.com/Significant-performance-regression-for-increased-maxsockbuf-on-8.0-RELEASE-tt26745981.html#a26745981 )
kern.ipc.maxsockbuf=262144
# Every socket is a file, so increase them
kern.maxfiles=204800
kern.maxfilesperproc=200000
kern.maxvnodes=200000
# Small send space is useful for http servers that serve small files
# Autotuned since 7.x
#net.inet.tcp.sendspace=16384

# Increase portrange
# For outgoing connections only. Good for seed-boxes and ftp servers.
net.inet.ip.portrange.first=1024
net.inet.ip.portrange.last=65535
# Security
net.inet.ip.redirect=0
net.inet.ip.sourceroute=0
net.inet.ip.accept_sourceroute=0
net.inet.icmp.maskrepl=0
net.inet.icmp.log_redirect=0
net.inet.icmp.drop_redirect=1
net.inet.tcp.drop_synfin=1
# Security
net.inet.udp.blackhole=1
net.inet.tcp.blackhole=2
# Increases default TTL, sometimes useful
# Default is 64
net.inet.ip.ttl=128
# Lessen max segment life to conserve resources
# ACK waiting time in miliseconds (default: 30000 from RFC)
net.inet.tcp.msl=5000
# Max bumber of timewait sockets
net.inet.tcp.maxtcptw=200000
# Should be increased when you have A LOT of files on server
# (Increase until vfs.ufs.dirhash_mem becomes lower)
vfs.ufs.dirhash_maxmem=67108864

# Note from commit http://svn.freebsd.org/base/head@211031 :
# For systems with RAID volumes and/or virtualization envirnments, where
# read performance is very important, increasing this sysctl tunable to 32
# or even more will demonstratively yield additional performance benefits.
vfs.read_max=32



Запускаем сервисы

Код: Выделить всё
/usr/local/etc/rc.d/apache22 start
/usr/local/etc/rc.d/nginx start
/usr/local/etc/rc.d/memcached start


Проверяем запустились ли корректно сервисы:

httpd:

Код: Выделить всё
ps ax | grep httpd
45476  ??  Ss     0:01.72 /usr/local/sbin/httpd -DNOHTTPACCEPT
45477  ??  I      0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEPT
45478  ??  I      1:57.17 /usr/local/sbin/httpd -DNOHTTPACCEPT
45479  ??  S      0:58.02 /usr/local/sbin/httpd -DNOHTTPACCEPT
45480  ??  I      1:20.96 /usr/local/sbin/httpd -DNOHTTPACCEPT
45481  ??  I      0:41.50 /usr/local/sbin/httpd -DNOHTTPACCEPT
45482  ??  I      0:52.08 /usr/local/sbin/httpd -DNOHTTPACCEPT
45483  ??  S      1:06.11 /usr/local/sbin/httpd -DNOHTTPACCEPT
45496  ??  I      0:28.35 /usr/local/sbin/httpd -DNOHTTPACCEPT
51859  ??  I      0:24.14 /usr/local/sbin/httpd -DNOHTTPACCEPT
55619   0  R+     0:00.00 grep httpd


nginx:

Код: Выделить всё
ps ax | grep nginx
51854  ??  Is     0:00.00 nginx: master process /usr/local/sbin/nginx
51855  ??  S<     0:05.98 nginx: worker process (nginx)
51856  ??  S<     0:03.93 nginx: worker process (nginx)
55628   0  R+     0:00.00 grep nginx


Код: Выделить всё
ps ax | grep memcached
1121  ??  Is     0:02.31 /usr/local/bin/memcached -l 127.0.0.1 -d -u nobody
55630   0  RL+    0:00.00 grep memcached


В директории сайта создаем файлик phpinfo.php и проверяем, работает ли пхп и погрузились все модули
Код: Выделить всё
<?
phpinfo ();
?>


Проверяем запустились ли сервисы , если что то не так, глядим в логи и на экран

ФТП сервер не буду описывать , у каждого свой вкус. Вот вариант настройки Pure-FTPd+MySQL+Web http://www.ignix.ru/public/daemon/Pure-FTPd_MySQL_Web
У меня выбор на vsftpd. Фух, устал писать :)
Последний раз редактировалось server801 01 окт 2010, 14:18, всего редактировалось 9 раз(а).
Аватара пользователя
server801
Ученик
Ученик
 
Сообщения: 55
Зарегистрирован: 22 сен 2010, 21:57
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение Raven2000 » 01 окт 2010, 13:02

1. ИМХО думаю что место "Обновляем сырцы и порты любимой встроенной утилитой csup"
можно заменить ссылкой http://www.ignix.ru/public/local_remote_update_freebsd чтобы не замутнять рассудок доп-ми действиями, но какие то пометки при необходимости поставь. Может просто указать, что ты ставишь на ветку 8.х без всяких там "А давайте обновимся" =) Это уже делать нужно по дефолту. И я не думаю что это нужно вообще тут у тебя же статья не про обновлении портов и фри. =)

2. /etc/make.conf тоже спорно лучше по минимуму типа:
Код: Выделить всё
# для сервера
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-server
#BUILD_OPTIMIZED=yes
#BUILD_STATIC=yes
WITH_CHARSET=utf8
WITH_COLLATION=utf8_bin
#WITHOUT_INNODB=yes
WITH_ARCHIVE=yes
.endif

# для клиента
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-client
#BUILD_OPTIMIZED=yes
#BUILD_STATIC=yes
WITH_CHARSET=utf8
WITH_COLLATION=utf8_bin
.endif


3. Лучше одной строкой и дальше подобные команды одной строкой так лучше:
Код: Выделить всё
cd /usr/ports/www/apache22 && make install clean


4. Почему PHP и ext не версии 5.3? И точно столько модулей дял екст. может это ты дефолтные ставил?

5. Про мусю пускай так, но в будущем я напишу статью где мона будет ссылатся.

6. зачем
Код: Выделить всё
cd /usr/ports/databases/memcached
make && make install && make clean

может однообразить?
Код: Выделить всё
cd /usr/ports/databases/memcached && make install clean


7.Идем настраивать виртуальный хост
Может вынести в отдельный конфиг + в апаче?
Код: Выделить всё
Include etc/apache2/Includes/*.conf

Код: Выделить всё
cat /usr/local/etc/apache2/Includes/httpd-vhosts.conf


8. Для вкусности добавим в /etc/rc.conf
Выкинь лишнее что не по делу. И добавь что нужно например запуск апача и тп

9. выдай ps -ax демонов

10. на фтп можешь сослаться сюда http://www.ignix.ru/public/daemon/Pure-FTPd_MySQL_Web

==
Остальное по мелочам =)
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]
Аватара пользователя
Raven2000
-=_UNIX_=-
-=_UNIX_=-
 
Сообщения: 680
Зарегистрирован: 14 сен 2010, 13:08
Откуда: Там, где нас нет.
Благодарил (а): 1 раз.
Поблагодарили: 37 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение server801 » 01 окт 2010, 14:15

Насчет make.conf - чтобы лишние либы иксов не тянул.
Насчет почему не 5.3 - потому что движок socengine написан на версию 5.2 и на 5.3 некорректно работали модули плагины, появлялось много багов. Если кому нужно под что то другое , разница небольшая , можно ставить и другую версию пхп :)
насчет апача - там указано что расскоментирована строчка

Код: Выделить всё
Include etc/apache22/extra/httpd-vhosts.conf # расскоментим для виртуальных хостов


Остальное все вроде бы поправил , что еще можно дополнить? Думал написать про пыхадмин, но не стал, думаю в рунете инфы предостаточно :)
Аватара пользователя
server801
Ученик
Ученик
 
Сообщения: 55
Зарегистрирован: 22 сен 2010, 21:57
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение Raven2000 » 01 окт 2010, 21:47

В принципе хорошо только статья "Социальная Сеть или как правильно настроить вебсервер" тут или либо или выходит. Где про "Социальная Сеть" было бы самое то если бы ты описал установку на все это socengine тогда бы было бы супер, а так это просто "Как настроить вебсервер" =)
Зарегистрируйся тут http://www.ignix.ru/user/register и создай страницу в этом разделе http://www.ignix.ru/book/freebsd/network
Я помогу с разбивкой на разделы и финальной писаниной.
А ты определись как поступить я бы на твоем месте дописал про socengine и мне действительно было бы интересно почитать про то, что это и как работает тк я это еще не изучал. drinks
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]
Аватара пользователя
Raven2000
-=_UNIX_=-
-=_UNIX_=-
 
Сообщения: 680
Зарегистрирован: 14 сен 2010, 13:08
Откуда: Там, где нас нет.
Благодарил (а): 1 раз.
Поблагодарили: 37 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение server801 » 01 окт 2010, 23:42

Если честно, то это огромный труд, много приходилось исправлять, ооочень много косяков с руссификацией, с видео-плагином трахался с недельку пока все допер что и как. Есть очень интересный ресурс по этой теме http://talk.socengine.ru/forum.php . Вот там все и расписано что и как . Писать просто не имеет смысла, так как у движка на разных версиях свои траблы :)
Если про заголовок говорить - ну это как заметка для тех, кто хочет подхотовить под такой род проектов, не более. В таком случае название будет Делаем
вебсервер своими руками , ну или что то в этом духе :D
Аватара пользователя
server801
Ученик
Ученик
 
Сообщения: 55
Зарегистрирован: 22 сен 2010, 21:57
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение Raven2000 » 02 окт 2010, 21:51

Ну хорошо пусть будет "Nginx+apache22+PHP 5.2+ffmpeg+flvtool2" =) (а жаль занятно было бы почитать хоть начало установки этого зверя и советы по подводным камням)
Регистрируйся на сайте и копируй туда статью. Скажешь когда сделаешь (ЛС + линк) я откорректирую по мелочам и в путь. =)
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]
Аватара пользователя
Raven2000
-=_UNIX_=-
-=_UNIX_=-
 
Сообщения: 680
Зарегистрирован: 14 сен 2010, 13:08
Откуда: Там, где нас нет.
Благодарил (а): 1 раз.
Поблагодарили: 37 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение server801 » 03 окт 2010, 10:31

Код: Выделить всё
Ваше сообщение не прошло спам фильтр и через это не сохранено.

:(
Аватара пользователя
server801
Ученик
Ученик
 
Сообщения: 55
Зарегистрирован: 22 сен 2010, 21:57
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение Raven2000 » 03 окт 2010, 10:55

Значит через это мыло сайт тоже спамили. вписывай другое мыло.
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]
Аватара пользователя
Raven2000
-=_UNIX_=-
-=_UNIX_=-
 
Сообщения: 680
Зарегистрирован: 14 сен 2010, 13:08
Откуда: Там, где нас нет.
Благодарил (а): 1 раз.
Поблагодарили: 37 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение server801 » 03 окт 2010, 11:09

хм, странно, это мой домен...
Аватара пользователя
server801
Ученик
Ученик
 
Сообщения: 55
Зарегистрирован: 22 сен 2010, 21:57
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение Raven2000 » 03 окт 2010, 14:32

Что\откуда\куда пытаешься слать?
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]
Аватара пользователя
Raven2000
-=_UNIX_=-
-=_UNIX_=-
 
Сообщения: 680
Зарегистрирован: 14 сен 2010, 13:08
Откуда: Там, где нас нет.
Благодарил (а): 1 раз.
Поблагодарили: 37 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение server801 » 03 окт 2010, 14:40

Не пойму как создать статью, с друпалом первый раз сталкиваюсь...
Аватара пользователя
server801
Ученик
Ученик
 
Сообщения: 55
Зарегистрирован: 22 сен 2010, 21:57
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение ttys » 03 окт 2010, 16:03

по поводу index.php, рекомендуют добавить echo, хз я не спец по пхп но без echo у меня в первый раз не заработало. xz

Код: Выделить всё
<?php
echo phpInfo();
?>
Аватара пользователя
ttys
*BSD
*BSD
 
Сообщения: 189
Зарегистрирован: 15 сен 2010, 08:42
Откуда: Ростов-на-Дону
Благодарил (а): 5 раз.
Поблагодарили: 3 раз.

Re: Социальная Сеть или как правильно настроить вебсервер

Непрочитанное сообщение ttys » 03 окт 2010, 16:08

может накать статью про установку друпала? =)
хотя вот вариант с мусей линк
а вот с постгре линк
Аватара пользователя
ttys
*BSD
*BSD
 
Сообщения: 189
Зарегистрирован: 15 сен 2010, 08:42
Откуда: Ростов-на-Дону
Благодарил (а): 5 раз.
Поблагодарили: 3 раз.

Nginx+apache22+PHP 5.2+ffmpeg+flvtool2

Непрочитанное сообщение server801 » 03 окт 2010, 17:48

Обсуждение статьи Nginx+apache22+PHP 5.2+ffmpeg+flvtool2
Аватара пользователя
server801
Ученик
Ученик
 
Сообщения: 55
Зарегистрирован: 22 сен 2010, 21:57
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.

Re: Nginx+apache22+PHP 5.2+ffmpeg+flvtool2

Непрочитанное сообщение Raven2000 » 03 окт 2010, 22:15

Я откорректировал твою статью и опубликовал =)
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]
Аватара пользователя
Raven2000
-=_UNIX_=-
-=_UNIX_=-
 
Сообщения: 680
Зарегистрирован: 14 сен 2010, 13:08
Откуда: Там, где нас нет.
Благодарил (а): 1 раз.
Поблагодарили: 37 раз.

Re: Nginx+apache22+PHP 5.2+ffmpeg+flvtool2

Непрочитанное сообщение server801 » 03 окт 2010, 23:22

Спасибо! Первая моя статья на масштабном рунете :)
З.Ы Откорректировали норм, прям для чайнегов :D
Аватара пользователя
server801
Ученик
Ученик
 
Сообщения: 55
Зарегистрирован: 22 сен 2010, 21:57
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.

Re: Nginx+apache22+PHP 5.2+ffmpeg+flvtool2

Непрочитанное сообщение Raven2000 » 04 окт 2010, 20:42

Ты бы написал о соц. сети это было бы интересно т.к. таких статей очень мало. Написание такой статьи может будет и тяжело, но зато народ тебе спасибо скажет. =)
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]
Аватара пользователя
Raven2000
-=_UNIX_=-
-=_UNIX_=-
 
Сообщения: 680
Зарегистрирован: 14 сен 2010, 13:08
Откуда: Там, где нас нет.
Благодарил (а): 1 раз.
Поблагодарили: 37 раз.


Вернуться в Статьи

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

cron