XAMPP là chương trình tạo web server được ứng dụng trên các hệ điều hành Linux, MacOS, Windows. XAMPP hoàn toàn miễn phí, dễ cài đặt và có chứa MariaDB, PHP và Perl.
Tải về miễn phí tại:
www.apachefriends.org
Các bước cài đặt cũng khá đơn giản, bạn hoàn toàn có thể tự làm chủ được.
Mặt định, XAMPP được cấu hình để chạy với hiệu năng khá kém, làm ảnh hưởng đến việc thực thi mã nguồn php của chúng ta.
Do đó, tôi sẽ hướng dẫn các bạn cấu hình lại 1 vài thông số để giúp XAMPP chạy nhanh hơn.
Trước khi thực hiện hãy tắt tất cả các module của XAMPP.
Mở XAPP Control Panel -> Chọn Stop tất cả các Module
Phần 1: Cấu hình php.ini
Mở XAPP Control Panel -> Tại mục Apache -> Chọn Config -> Chọn PHP (php.ini) -> Tập tin php.ini sẽ được mở ra.
Tìm và thay thế các thông số cài đặt sau:
Code:
zlib.output_compression=On
zlib.output_compression_level = -1
realpath_cache_size = 16M
memory_limit=1024M
post_max_size=100M
upload_max_filesize=100M
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.use_cwd=1
opcache.validate_timestamps=1
opcache.revalidate_freq=5
opcache.enable_file_override=0
opcache.dups_fix=1
Phần 2: Cấu hình httpd-xampp.conf
Truy cập vào: www.apachelounge.com
Tìm và tải về phiên bản mod_fcgid mới nhất (lưu ý lựa chọn 32 hay 64 bit, thông thường đều là 64 bit).
Ví dụ tải về tập tin sau: mod_fcgid-2.3.10-win64-VS16.zip
Giải nén file vừa tải về, tìm copy duy nhất file mod_fcgid.so và đem vào thư mục C:\xampp\apache\modules
Mở XAPP Control Panel -> Tại mục Apache -> Chọn Config -> Chọn Apache (httpd-xampp.conf) -> Tập tin httpd-xampp.conf sẽ được mở ra.
Tìm và xóa bỏ đoạn code sau:
Code:
LoadModule php7_module "C:/Apps/xampp/php/php7apache2_4.dll"
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
Thêm vào ngay bên dưới phần bị xóa bỏ đoạn code sau:
Code:
#
# PHP-Module setup
#
LoadFile "C:/xampp/php/php7ts.dll"
LoadFile "C:/xampp/php/libpq.dll"
LoadModule fcgid_module modules/mod_fcgid.so
<IfModule fcgid_module>
FcgidInitialEnv PATH "C:/xampp/php"
FcgidInitialEnv SystemRoot "C:/Windows"
FcgidInitialEnv SystemDrive "C:"
FcgidInitialEnv TEMP "C:/xampp/tmp"
FcgidInitialEnv TMP "C:/xampp/tmp"
FcgidInitialEnv windir "C:/windows"
FcgidIOTimeout 64
FcgidConnectTimeout 16
FcgidMaxRequestsPerProcess 1000
FcgidMaxProcesses 3
FcgidMaxRequestLen 8131072
# Location php.ini:
FcgidInitialEnv PHPRC "C:/xampp/php"
FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000
<Files ~ "\.php$">
Options Indexes FollowSymLinks ExecCGI
AddHandler fcgid-script .php
FcgidWrapper "C:/xampp/php/php-cgi.exe" .php
</Files>
</IfModule>
Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
<Directory "C:/xampp/phpMyAdmin">
# add this option allow FastCGI
Options ExecCGI
AllowOverride AuthConfig
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>
Lưu ý thay thế C:/xampp/ thành đường dẫn đến thư mục cài đặt XAMPP trên máy tính của bạn.
Phần 3: Cấu hình my.ini
Mở XAPP Control Panel -> Tại mục MySQL-> Chọn Config -> Chọn my.ini -> Tập tin my.ini sẽ được mở ra.
Tìm và thay thế các thông số cài đặt sau:
Code:
key_buffer = 64M
max_allowed_packet = 16M
sort_buffer_size = 2M
net_buffer_length = 2M
read_buffer_size = 2M
read_rnd_buffer_size = 64M
myisam_sort_buffer_size = 8M
innodb_buffer_pool_size = 64M
innodb_log_file_size = 10M
innodb_log_buffer_size = 64M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 180
Xong, bây giờ lưu mọi thứ lại và khởi động lại các dịch vụ của XAMPP sau đó xem tốc độ đã được cải thiện chưa nhé.
Tối ưu Apache
Notice: dòng config nào đang bị disable (có dấu # phía trước) thì các bạn bỏ dấu # đó đi để enable config đó. Các bạn nên sử dụng Ctrl + F để tìm kiếm nhanh config line.
php.ini
php.ini
là file khởi chạy của PHP, nó chứa toàn bộ các cấu hình của PHP. Trong quá trình làm việc thực tế với server, bạn sẽ đụng chạm tới file này nhiều. File này nằm ở xamppphpphp.ini
realpath_cache_size = 4m
XDebug
là một công cụ debug tuyệt vời, tuy nhiên nếu bạn không sử dụng hoặc chưa sử dụng đến thì tốt nhất nên disable nó lại
;[XDebug];zend_extension = "E:xamppphpextphp_xdebug.dll";xdebug.profiler_append = 0;xdebug.profiler_enable = 1;xdebug.profiler_enable_trigger = 0;xdebug.profiler_output_dir = "E:xampptmp";xdebug.profiler_output_name = "cachegrind.out.%t-%s";xdebug.remote_enable = 0;xdebug.remote_handler = "dbgp";xdebug.remote_host = "127.0.0.1";xdebug.trace_output_dir = "E:xampptmp"
my.ini
my.ini
là file config của MySQL. File này nằm ở xamppmysqlbin
innodb_flush_log_at_trx_commit = 2
httpd.conf
httpd.conf
là file configure Apache HTTP server. File này nằm ở xamppapacheconfhttpd.conf
EnableMMAP onEnableSendfile on
Tìm Listen 80
và thay thế bằng Listen 0.0.0.0:80
. Việc này giúp Apache chỉ lắng nghe IPv4 address chứ không ngoe nguẩy thêm với IPv6 nếu hệ thống có hỗ trợ
#Listen 80Listen 0.0.0.0:80
Notice: Sau khi thực hiện hết các thay đổi trên, bạn hãy restart lại Apache
để các thay đổi có hiệu lực.
Thay đổi nội dung file hosts
Bạn thay đổi nội dung file hosts như sau để tăng tốc độ lookup của Apache. Mấy cái dòng comment thì xóa hết đi nhé, để cũng chả được lợi lộc gì cả
127.0.0.1 localhost127.0.0.1 127.0.0.1
Nếu bạn sử dụng Virtual host, bạn có thể set file host như sau
127.0.0.1 localhost symfony.local drupal.local wordpress.local127.0.0.1 127.0.0.1
Thay đổi cổng lắng nghe của apache
Thay đổi cổng nghe từ 80 thành 8080 để tránh xung đột với các chương trình như Skype. Mở tệp httpd.conf của bạn và tìm dòng bắt đầu bằng Listen(khoảng dòng 62). Thay đổi nó như sau: Listen 127.0.0.1:8080
Thay đổi sơ đồ điện của bạn
Thay đổi gói năng lượng của bạn từ Cân bằng sang Hiệu suất cao. Bạn có thể làm điều này trongControl Panel\All Control Panel Items\Power Options
Tắt IPv6
Các khoản tín dụng của nhiệm vụ cụ thể này thuộc về Jef , nơi anh ấy đã chỉ ra điều này trong bài đăng trên blog của mình . Từ desktop Windows 8, bấm Windows Keyvà R keycùng một lúc
Gõ regedit vào hộp thoại Run và bấm OK
Sử dụng Registry Editor để mở rộng cây đăng ký và duyệt đến:
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TCPIP6\Parameters
Nhấp chuột phải vào Parameters, mở rộng Newvà chọn DWORD (32-bit)Giá trị
Nhập DisabledComponentsvào Namelĩnh vực này
Nhấp đúp vào DisabledComponentsgiá trị mới , nhập ffffffffvào Value datahộp thoại và nhấp vào OKnút
Xác nhận giá trị đăng ký mới chứa dữ liệu cần thiết.
Thay đổi vv / máy chủ của bạn
Nếu bạn sử dụng máy chủ ảo, đừng thêm từng máy chủ ảo trên một dòng mới. Thay vào đó hãy liệt kê chúng như sau. 127.0.0.1 site-a site-b site-c
Tôi cũng đã nói thêm 127.0.0.1 127.0.0.1vì tôi nghe nói điều này bằng cách nào đó cũng cải thiện việc tra cứu. (Không thể xác nhận điều này nhưng sẽ không đau khi đặt nó ở đó)
Tệp máy chủ của bạn được đặt tại C:\Windows\System32\Drivers\etc
Kiểm tra có bao nhiêu quy trình apache đang chạy
Trong trường hợp của tôi, tôi có hai tiến trình apache đang chạy. Hãy chắc chắn rằng bạn chỉ có một chạy. Bạn có thể kiểm tra điều này bằng cách nhấn CTRL+ALT+DELvà nhấnTask Manager
Tắt Công cụ lọc cơ sở (BFE)
Những gì tôi thấy là đang hoạt động một chút là tắt Công cụ lọc cơ sở. Vì việc dừng hoặc tắt dịch vụ BFE sẽ làm giảm đáng kể tính bảo mật của hệ thống, bạn chỉ nên thực hiện việc này khi cần thiết.
Đi tới Bảng điều khiển => Công cụ quản trị => Dịch vụ => Công cụ lọc cơ sở
Dừng Công cụ lọc cơ sở bằng cách nhấp vào Dừng
Tăng mức độ ưu tiên quy trình của Apache
Tới trình quản lý tác vụ của bạn và thay đổi mức ưu tiên quy trình của Apache từ Bình thường thành Cao bằng cách nhấp chuột phải -> Đặt mức ưu tiên -> Cao
Giữ cho quy trình của Apache bận rộn
Đây là một phương pháp hơi xấu nhưng nó chắc chắn hiệu quả. Nó giúp Apache luôn bận rộn và sẽ xử lý các yêu cầu của riêng bạn nhanh hơn. Chèn địa chỉ web cục bộ của bạn vào vị trí iframe và lưu nó trong tệp html, chạy nó và chỉ để nó ở đó cho đến khi bạn hoàn tất.
<html>
<head>
<script>
setTimeout(function(){
window.location.reload(1);
}, 2000);
</script>
</head>
<body>
<iframe name=”iframe” id=”iframe” src=”http://mywebsite:8080″></iframe>
</body>
</html>
Hạ cấp xuống Windows 7 Pro
Với tư cách là người dùng Windows 8 Pro, bạn có quyền hạ cấp xuống Windows 7. Đọc thêm ở đây về điều này. Đối với tôi, đó là giải pháp duy nhất thực sự làm tốt công việc.