به نام دانای بر حق
مقدمه
قدرتمند ترین ،رایج ترین و به صرفه ترین وب سرور های دنیا تشکیل شده از مثلث جادویی php – mysql -apache هست، که هر سه open source و cross plat-form هستند یعنی وابسته به سیستم عامل خاصی نیستند، اما از اونجایی که پیش از این در مباحث قبلی بحث کردیم centos قوی تری توزیع لینوکس برای راهنداری وب سرور می باشد حال ما در این یادداشت باهم یک سرور که شامل موارد زیر میشود را راهندازی خواهیم کرد: بله شامله : )
- Apache 2.2.15
- MySQL 5.5.34
- PHP 5.5.4
- pure-ftpd finall
این آموزش شامل centos 5.x و centos 6.x ورژن های ۳۲ و ۶۴ بیت میباشد
ماژول هایی که نصب خواهند شد:
MySQL (php-mysql) – A extension for PHP applications that use MySQL databases. PostgreSQL (php-pgsql) – A extension for PostgreSQL database for PHP. MongoDB (php-pecl-mongo) – A driver for MongoDB database. SQLite (php-sqlite) – Extension for SQLite Database Engine. Memcache (php-pecl-memcache) – Memcached caching daemon. Memcached (php-pecl-memcached) – Memcached caching daemon. GD (php-gd) – GD extension for PHP application to serve graphics. XML (php-xml) – XML Parser for PHP applications. MBString (php-mbstring) – Mbstring extension is used to handle multi-byte string in PHP applications. MCrypt (php-mcrypt) – A Mcrypt library for PHP scripts. APC (php-pecl-apc) – APC module used to optimize and cache PHP code. CLI (php-cli) – Command-line interface for PHP. PEAR (php-pear) – Application Repository framework for PHP. PDO (php-pdo) – Database access module for PHP applications.
آموزش
از طریق SSH به سرور خود وصل شوید و دستورات زیر را وارد کنید بر اساس سیستم عامل خودتون اگر هم نمیدانید دقیقا از کدام سیستم نوع و ورژن استفاده می کنید میتوانید اطلاعات مذکور را در این آموزش بدست آورید
افزودن مخزن مورد نیاز Remi:
## Install Remi & Epel Repository on RHEL/CentOS 6.x - 32 Bit ## rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm ## Install Remi & Epel Repository on RHEL/CentOS 6.x - 64 Bit ## rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm ## Install Remi Repository on RHEL/CentOS 5.x - 32 Bit ## rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm ## Install Remi Repository on RHEL/CentOS 5.x - 64 Bit ## rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
نصب Apache 2.2.15, MySQL 5.5.34 & PHP 5.5.4
## Installing on RHEL/CentOS 5-6 ## yum --enablerepo=remi,remi-test install httpd mysql mysql-server php php-common
نصب ماژول های php:
## Installing on RHEL/CentOS 5-6 ## yum --enablerepo=remi,remi-test install php-mysql php-pgsql php-pecl-mongo php-sqlite php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml php-pecl-apc php-cli php-pear php-pdo
راهندازی apache server و mysql server :
## Enable Apache and MySQL on Run-Levels ## chkconfig --levels 235 httpd on chkconfig --levels 235 mysqld on /etc/init.d/httpd start /etc/init.d/mysqld start /etc/init.d/httpd status /etc/init.d/mysqld status
اگر پس از ورود دستور های بالا این دو خط را در تریمنال دیدید یعنی هر دو با موفق نصب شده اند:
httpd (pid xxxx) is running... mysql (pid xxxx) is running...
سپس برای دریافت اطلاعات دقیق سرور میتوانید اولین فایل php خود را ایجاد کنید:
nano /var/www/html/phpinfo.php
داخل فایل اطلاعات زیر رو کپی کرده و سپس با ctrl+x خارج و y بزنید تا save شود:
<?php phpinfo (); ?>
اکنون باز وارد شدن به آدرس زیر به جای xx.xx.xx.xx آدرس آی پی سرور را بگذارید:
http://xx.xx.xx.xx/phpinfo.php
نصب و راهندازی FTP:
من خودم برنامه pure-ftpd رو پیشنهاد می کنم چون FTP سرور های دیگه رو امتحان کردم اذیت شدم این روال اما نصبش:
yum install pure-ftpd
برای راهندازیش نیاز دارین پیکربندی اش رو تغییر بدین قبل از اجرای برنامه:
nano /etc/pure-ftpd/pure-ftpd.conf
بهترین راه برای authentication و احراز هویت این است که شما از خوده هویت سنجی لینوکس استفاده کنید برای این این خط را در کانفیگ uncomment کنید یعنی # ابتداش رو بردارید:
# If you want simple Unix (/etc/passwd) authentication, uncomment this UnixAuthentication yes
برای تنظیمات امنیتیش هم:
# Cage in every user in his home directory ChrootEveryone yes # If you want to log all client commands, set this to "yes". # This directive can be duplicated to also log server responses. VerboseLog yes # Disallow anonymous connections. Only allow authenticated users. NoAnonymous yes
کافنیگ را به شکل بالا تغییر بدید تا کاربران در پوشه خودشون محصور بشوند.
حال انجام راهندازی و اجرا پس از پیکربندی (کافیگ):
chkconfig pure-ftpd on service pure-ftpd start /etc/init.d/pure-ftpd status
حال اگر شکل زیر را دید یعنی FTP هم آماده اس :
pure-ftpd (pid xxxx) is running... +------+---------+-------+------+-------------------------------------------+ | PID | Login |For/Spd| What | File/IP | +------+---------+-------+------+-------------------------------------------+
خب حال برای ساختن user در لینوکس در آموزش توضیحات ارائه شده اما ما یک کاربر آزمایشی با فولدر مورد نظر در لینوکس می سازیم که از ftp اون هم میتوانید استفاده کنید:
useradd xftp -d /var/www/html passwd xftp
یک کاربر با نامه xftp ساخته شده و از شما دوبار پسورد میخواد که پسورد ftp شما میشود که به روت اصلی سرور همان آدرس ip دسترسی دارد می توانید آن را امتحان کنید.
ساختن کاربر برای MySQL
یکی از چیز هایی که شما نیاز دارین بسازین که از راه دور بدون نصب برنامه های همچون phpmyadmin رو سرور به اون دسترسی داشته باشید این هستش یه نام کاربری MySQL بسازید.
دستور های زیر رو به ترتیب در ترمینال بزنید:
mysql CREATE USER 'usere_delkhah'@'%' IDENTIFIED BY 'passe_delkhah'; GRANT ALL PRIVILEGES ON *.* TO 'usere_delkhah' WITH GRANT OPTION; exit;
خب حالا توسط برنامه های کنترل دیتابیس همچون HeidoSQL یا MySQL Work bench به mysql خود وصل شده و از آن استفاده کنید.
در ضمن در تی تمام این مراحل همگی در نظر گرفته شده است که فایرال سرور خاموش است.
خب امیدوارم که از اینآموزش استفاده کرده باشید.
دیدگاهتان را بنویسید لغو پاسخ