#
TestRail ۸.۰.۱ برای همه مشتریان Server در دسترس است. مشتریانی که میخواهند به TestRail ۸.۰.۱ ارتقا دهند، میتوانند فایلهای نصب را از TestRail Billing Portal دانلود کنند.
دستورالعملهای زیر به شما کمک میکند با روش نصب TestRail روی سیستم Windows Server آشنا شوید. اطلاعات بیشتر دربارهٔ سیستمعاملها و سیستمهای سرور پشتیبانیشده را اینجا ببینید.
توصیه میکنیم از پکیجهای آماده و یکپارچه Windows برای PHP/Apache/MySQL، مثل XAMPP، استفاده نکنید. برای محیطهای Windows، بهتر است از IIS، PHP با FastCGI و SQL Server استفاده کنید تا بهترین عملکرد و پایداری را داشته باشید؛ جزئیات آن در ادامه توضیح داده شده است. گزینه جایگزین، استفاده از Linux، Apache و MySQL است؛ هر دو محیط بهخوبی کار میکنند.
آمادهسازی سرور #
TestRail برای نصب روی سرور به یک web server، یک دیتابیس SQL یعنی SQL Server، یک دیتابیس NoSQL یعنی Cassandra ۳.۱۱، و یک محیط فعال PHP ۸.۰ یا ۸.۱ نیاز دارد. روی Windows Server، TestRail بهترین عملکرد را با web server مایکروسافت یعنی IIS و PHP پیکربندیشده برای اجرا با FastCGI دارد.
نصب IIS #
برای نصب IIS روی Windows Server، Server Managerرا اجرا کنید. در Dashboard، زیر بخش Configure This Local Server، روی Add roles and features کلیک کنید.

گزینهٔ Role-based or feature-based installation را انتخاب کنید و روی Next کلیک کنید.

از server pool، server host موردنظر برای نصب IIS را انتخاب کنید و روی Next کلیک کنید. سپس هنگام انتخاب Server Roles، مطمئن شوید Web Server (IIS) انتخاب شده باشد و در بخش Web Server > قسمت Application Development، مطمئن شوید CGI هم انتخاب شده باشد، البته اگر از قبل انتخاب نشده است. روی Install کلیک کنید.

#
برای اطلاعات بیشتر، به مستندات رسمی Microsoft مراجعه کنید:
فایلهای رسمی PHP را دانلود کنید با فرمت .zip.
از سال ۲۰۲۳، VS16 x64 Non Thread Safe نسخه پیشنهادی برای دانلود است، چون در مستندات نصب از همین نسخه استفاده میشود.

پس از کامل شدن دانلود، فایلهای فشرده PHP را در مسیر C:\php\ روی سیستم میزبان استخراج کنید.
بخش Environment Variables را ویرایش کنید و یک متغیر سیستمی Path جدید با مقدار C:\php اضافه کنید.

به IIS Manager بروید، روی میزبان سرور کلیک کنید، سپس روی Handler Mappings و بعد روی Add Module Mapping کلیک کنید.

در پنجره جدید، همه فیلدها را دقیقاً با اطلاعات نشاندادهشده در تصویر زیر پر کنید و سپس روی OK کلیک کنید.

در IIS Manager دوباره به میزبان سرور برگردید و این بار روی Default Document کلیک کنید. در پنل Actions روی Add کلیک کنید.

در فیلد Name مقدار Index.php را وارد کنید و روی OK کلیک کنید. سپس دوباره روی Add کلیک کنید و این بار در فیلد Name مقدار Default.php را وارد کنید و روی OK کلیک کنید.

#
برای اجرای PHP info diagnostics و بررسی PHP Version، دستورالعملها را دنبال کنید.
نصب پیشنیازها #
برای استفاده از TestRail روی Windows با دیتابیس SQL Server، PHP extensionهای زیر لازم هستند:
- extension cassandra برای دسترسی به دیتابیس NoSQL
- PHP extension gd برای ساخت نمودارها
- PHP sqlsrv_81_nts_x64 extension برای دسترسی به دیتابیسهای SQL Server
- PHP extension pdo_mysql برای دسترسی به دیتابیس
- PHP extension fileinfo برای تشخیص نوع فایل و encoding
- PHP extension imagick برای کار با تصاویر
- PHP extension mbstring برای کار با رشتههای Unicode
- PHP extension curl برای بررسی بهروزرسانیها و موارد مشابه
- PHP extension openssl برای مدیریت اتصالهای SSL
- ionCube PHP Loader برای decode کردن فایلهای PHP مربوط به TestRail
دانلود کنید: PHP Microsoft drivers for SQL Server را از اینجا، و روی Download Microsoft Drivers for PHP for SQL Server (Windows)کلیک کنید.
قبل از extract کردن فایلها، ابتدا باید مطمئن شوید نسخه PHP شما از کدام حالت Thread Safety استفاده میکند (ts یا nts)؛ در غیر این صورت نصب درست کار نمیکند. برای اینکه ببینید نسخه شما Thread Safe است یا Not Thread Safe، دستور زیر را وارد کنید:
php -i|find "Thread Safety"
بعد از extract کردن فایلها، فایلهای Thread Safety متناسب با نسخه خود را پیدا کنید و آنها را در مسیر C:\php\ext\ کپی کنید. برای مثال:
- php_pdo_sqlsrv_81_nts_x64.dll
- php_sqlsrv_81_nts_x64.dll
برای نصب این extensionها، موارد زیر را به فایلهای php.ini خود اضافه کنید:
- extension=pdo_sqlsrv_81_nts_x64
- extension=sqlsrv_81_nts_x64
این driver همچنین نیاز دارد ODBC Driver نصب باشد. package متناسب را دانلود و نصب کنید:
بعد از فعال کردن extension در فایل تنظیمات PHP.ini و نصب ODBC Driver، وبسرور IIS خود را restart کنید. میتوانید با اجرای تابع phpinfo()بررسی کنید که extension با موفقیت load شده باشد. همچنین میتوانید در Command Prompt دستور php -m را اجرا کنید تا مطمئن شوید moduleها در حال اجرا هستند.
مستندات رسمی نصب extension imagick را از اینجا دنبال کنید.
#
به دستورالعملهای نصب Cassandra برای اطلاعات بیشتر درباره پیشنیازهای Cassandra و نصب/پیکربندی کامل مراجعه کنید.
آخرین PHP extension موردنیاز، ionCube PHP Loader رایگان است. میتوانید ionCube Loader for Windows را از اینجا دانلود کنید.
این روش نصب به فایل «ioncube_loader_win_8.۱.dll» نیاز دارد. برای دریافت آن، فایل Windows VC16 (Non-TS) (۶۴-bit) را با نام ioncube_loaders_win_nonts_vc16_x86-۶۴.zip دانلود کنید. همه فایلها را روی سرور خود extract کنید و extension مربوط به loader را در پوشه ext مربوط به PHP کپی کنید؛ این مسیر معمولا C:\php\ext\ است. سپس با اضافه کردن خط زیر به فایل PHP.ini، extension را فعال کنید. این فایل معمولا در پوشه نصب PHP قرار دارد، مثل C:\php\:
zend_extension = "C:\php\ext\ioncube_loader_win_8.1.dll"
برای بررسی اینکه ionCube loader extension با موفقیت نصب شده است، دستور php -v را در Windows Command Prompt اجرا کنید. برای اجرای این دستور باید ابتدا به پوشه نصب PHP بروید.
اگر خروجی php -v چیزی شبیه نمونه زیر باشد، ionCube loader extension با موفقیت نصب شده است. به خط ionCube PHP Loader توجه کنید:
PHP 8.1.14 (cli) (built: Jan 4 2023 12:24:57) (NTS Visual C++ 2019 x64)
Copyright (c) The PHP Group
Zend Engine v4.1.14, Copyright (c) Zend Technologies
with the ionCube PHP Loader v12.0.5, Copyright (c) 2002-2022, by ionCube Ltd.
#
برای اینکه IIS بتواند این extension را load کند، ممکن است لازم باشد permission فایل extension مربوط به ionCube را تغییر دهید. برای این کار، در Explorer روی فایل راستکلیک کنید، Properties را بزنید، تب Security را انتخاب کنید و گروه Users را اضافه کنید.
بیشتر extensionها باید بهصورت خودکار اضافه شوند، اما لازم است مراحل اضافی مربوط به Cassandra، IonCube و imagick را هم انجام دهید. اگر PHP را دستی نصب کردهاید، ممکن است لازم باشد extensionهای موردنیاز را در فایل PHP.ini به این شکل فعال کنید:
zend_extension = "C:\php\ext\ioncube_loader_win_8.1.dll"
extension=cassandra
extension=gd
extension=fileinfo
extension=imagick
extension=mbstring
extension=curl
extension=openssl
extension=pdo_sqlsrv_81_nts_x64
extension=sqlsrv_81_nts_x64
برای reload کردن PHP، وبسرور IIS را restart کنید. سادهترین راه این است که سرویس World Wide Web Publishing Windows را restart کنید. برای این کار، از Administrative Tools برنامه Services را باز کنید و این سرویس را restart کنید. توجه داشته باشید که با این کار همه IIS application poolها و وبسایتها restart میشوند. اگر وبسایتها یا applicationهای دیگری را هم روی این سرور host میکنید، بهتر است فقط application pool مربوطه را restart کنید.

