


Memanfaatkan kekuatan WSL 2 untuk aliran kerja pembangunan PHP linux
Jul 26, 2025 am 09:40 AMWSL 2 adalah standard baru untuk pembangunan PHP yang serius pada Windows. 1. Pasang WSL 2 dengan Ubuntu menggunakan WSL -Install, kemudian kemas kini dengan Sudo Apt Update & Sudo APT Upgrade -y, menyimpan projek dalam sistem fail Linux untuk prestasi optimum. 2. Pasang PHP 8.3 dan komposer melalui PPA Ond?ej Sury dan persediaan komposer global, memastikan konsistensi seperti pengeluaran. 3. Gunakan nginx dan php-fpm dengan memasang nginx, mengkonfigurasi tapak di/etc/nginx/sites-tersedia, membolehkannya dengan pautan simbolik, dan memulakan semula nginx untuk mencapai pariti persekitaran yang benar. 4. Pasang MySQL dalam WSL, selamatkannya, buat pangkalan data, dan sambungkan menggunakan db_host = 127.0.0.1 dalam .Env untuk menguatkuasakan sambungan TCP, dengan akses dari alat Windows seperti TablePlus melalui Localhost: 3306. 5. Akses laman web ini dari pelayar Windows di http: // localhost terima kasih kepada penghantaran port automatik WSL 2, mengesahkan status Nginx jika diperlukan. 6. Berintegrasi dengan kod VS menggunakan pelanjutan WSL jauh untuk membuka projek secara langsung di Linux, membolehkan intelisense penuh, terminal Linux, Git, dan integrasi XDebug yang lancar. 7. Secara pilihan memasang Docker di WSL untuk perkhidmatan linux -native seperti Redis menggunakan curl -fssl https://get.docker.com | SH, menambah pengguna ke kumpulan Docker dan bekas yang boleh diakses dari WSL dan Windows. Persediaan ini menyampaikan pengalaman pembangunan PHP Linux-asli dengan integrasi alat penuh dan konsistensi persekitaran dari pembangunan ke pengeluaran.
Menjalankan persekitaran pembangunan PHP pada Windows yang digunakan untuk bermaksud bergelut dengan persediaan XAMPP, WAMP, atau Docker yang tidak pernah dirasakan "asli." Tetapi dengan WSL 2 (Subsistem Windows untuk Linux 2) , semuanya berubah. Anda kini boleh menjalankan persekitaran Linux yang sebenar secara langsung pada Windows-lengkap dengan sokongan SystemD, akses bash penuh, dan interoperabilitas sistem fail yang lancar-menjadikannya platform yang ideal untuk aliran kerja PHP yang moden, linux.

Inilah cara memanfaatkan WSL 2 untuk membina persediaan pembangunan PHP yang cepat, boleh dipercayai, dan pengeluaran.
? 1. Sediakan WSL 2 dengan distro mesra pemaju
Mulakan dengan memasang WSL 2 jika anda belum melakukannya:

WSL --stall
Perintah ini memasang Ubuntu secara lalai (disyorkan), tetapi anda boleh memilih orang lain seperti Debian atau Alpine.
Selepas pemasangan, kemas kini sistem:

Sudo Apt Update & Sudo Apt Upgrade -y
Mengapa Ubuntu? Ia mempunyai sokongan pakej PHP yang hebat, bantuan komuniti yang aktif, dan alat seperti add-apt-repository
membuat menambah repos pihak ketiga (seperti PHP PPA Ond?ej Sury).
? Petua Pro: Pastikan fail projek anda dalam sistem fail Linux (
/home/youruser/projects
) dan bukannya/mnt/c/
untuk prestasi yang lebih baik -terutamanya dengan komposer dan pemerhati fail.
? 2. Pasang PHP, komposer, dan sambungan utama di Linux
Sekarang pasang PHP terus dalam persekitaran WSL anda. Gunakan PPA Ond?ej yang dipercayai untuk versi terkini:
SUDO add-apt-repository PPA: Ondrej/php Kemas kini sudo apt SUDO APT Pasang Php8.3-CLI Php8.3-fpm Php8.3-MYSQL Php8.3-SQLite Php8.3-MBSTRING PHP8.3-XML PHP8.3-CURL PHP8.3-ZIP
Kemudian pasang komposer di seluruh dunia:
curl -ss https://getcomposer.org/installer | php sudo mv composer.phar/usr/tempatan/bin/komposer
Sekarang anda menjalankan binari PHP yang sama yang digunakan pada kebanyakan pelayan pengeluaran berasaskan Linux-tidak lebih "ia berfungsi pada isu mesin saya" kerana laluan khusus Windows atau lanjutan.
? Bonus: Jalankan
php -m
untuk melihat semua modul yang dimuatkan. Bandingkan ini dengan pelayan pementasan/pengeluaran anda untuk konsisten.
? 3. Gunakan pelayan Web Linux yang sebenar (NGINX PHP-FPM)
Untuk pariti persekitaran yang benar, elakkan pelayan PHP terbina dalam ( php -S
) memihak kepada NGINX PHP-FPM , sama seperti kebanyakan pengeluaran Laravel atau Symfony.
Pasang Nginx:
sudo apt memasang nginx
Buat konfigurasi tapak asas di /etc/nginx/sites-available/myapp
:
pelayan { Dengar 80; root/var/www/myApp/public; indeks indeks.php; lokasi / { try_files $ uri $ uri / /index.php?$Query_string; } Lokasi ~ \ .php $ { fastcgi_pass unix: /var/run/php/php8.3-fpm.sock; fastcgi_index index.php; fastcgi_param script_filename $ document_root $ fastcgi_script_name; termasuk fastcgi_params; } }
Membolehkannya:
sudo ln -s/etc/nginx/sites-available/myapp/etc/nginx/sites-enabled/ sudo nginx -t && sudo systemctl mulakan semula nginx
Kini aplikasi anda berjalan di bawah timbunan yang sama seperti kesilapan yang menarik pengeluaran awal.
? 4. Sambung ke MySQL/PostgreSQL Berlari di WSL
Pasang MySQL (atau PostgreSQL) secara langsung di WSL:
sudo apt pasang mysql-server sudo mysql_secure_installation
Selamatkannya, buat pangkalan data, dan kemas kini fail .env
anda:
Db_connection = mysql Db_host = 127.0.0.1 Db_port = 3306 Db_database = myApp Db_username = root Db_password =
Nota: Gunakan 127.0.0.1
, bukan localhost
, untuk memaksa TCP bukannya sambungan soket (yang boleh menjadi halus di WSL).
Anda juga boleh menggunakan alat seperti TablePlus atau MySQL Workbench dari Windows dengan menyambung ke localhost:3306
-it ke hadapan terus ke WSL 2.
? 5. Akses laman web anda dari penyemak imbas Windows
Secara lalai, Nginx mendengarkan port 80 di WSL. Terima kasih kepada Proxying Port Automatik WSL 2, anda boleh mengakses aplikasi anda dari Windows di:
http: // localhost
Tiada konfigurasi tambahan diperlukan! WSL 2 memasuki pelabuhan secara automatik antara Windows dan Linux VM.
?? Jika tidak berfungsi, pastikan Nginx berjalan:
status nginx perkhidmatan sudo
? 6. Bersepadu dengan kod VS (sokongan WSL terbaik dalam kelas)
Pasang kod Visual Studio dan sambungan WSL jauh .
Kemudian, dari terminal WSL anda:
kod/var/www/myApp
Ini dibuka vs kod yang disambungkan terus ke persekitaran Linux. Anda mendapat:
- Penuh intellisense menggunakan laluan linux
- Terminal berjalan di WSL
- Git Dikuasakan oleh Linux (tidak ada lagi sakit kepala CRLF)
- Xdebug bekerja dengan lancar
Sediakan Launch.json untuk XDebug dan Debug PHP meminta secara langsung -seperti Dev Linux asli.
? 7. Pilihan: Tambah Docker (versi Linux) untuk perkhidmatan tambahan
Perlukan Redis, Mailhog, atau Elasticsearch? Jalankan mereka melalui Docker di dalam WSL 2 , bukan enjin Windows Desktop Docker.
Pasang Docker di Ubuntu:
curl -fssl https://get.docker.com | sh sudo usermod -ag docker $ pengguna
Log keluar dan kembali, kemudian lari:
Docker Run -D -P 6379: 6379 Redis
Sekarang Redis boleh didapati di 127.0.0.1:6379
dari WSL dan Windows.
? Manfaat: Semua bekas berjalan di Linux, jadi tiada lapisan keserasian atau hits prestasi.
Pemikiran terakhir
WSL 2 menjembatani jurang antara kemudahan Windows dan keaslian pembangunan Linux. Dengan itu, anda mendapat:
- Model kernel dan proses Linux sebenar
- PHP, sambungan, dan perkhidmatan asli
- Integrasi lancar dengan alat Windows
- Konsistensi persekitaran dari dev ke prod
Anda tidak lagi "membangunkan pada Windows dengan alat Linux" -kembang dalam Linux , dengan Windows sebagai teman desktop anda.
Sediakan sekali, dan anda akan tertanya -tanya bagaimana anda pernah berjaya tanpa itu.
Pada asasnya, jika anda melakukan kerja PHP yang serius di Windows, WSL 2 bukan hanya bagus untuk mempunyai standard baru.
Atas ialah kandungan terperinci Memanfaatkan kekuatan WSL 2 untuk aliran kerja pembangunan PHP linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Fpm-fpm-fpm-fpm-fpm, yang manaprocessesSphpscriptsVIaNastCgi; 2.OptimizEphp-fpmByUsusingunixSockets, tetapanPm = dinamikPropropRiTemax_Children,

Adalah disyorkan untuk menggunakan homebrew untuk memasang php, run /bin/bash-c"$(curl-fsslhttps://raw.githubusercontent.com/homebrew/install/head/install.sh) " Selepas pemasangan, edit fail php.ini di laluan yang sepadan untuk menyesuaikan memori_limit, upload_max_filesize, post_max_size dan paparan_

WSL2ISTHENEWSTANDARDFORSERIousPhpDevelopmentonWindows.1.installwsl2withubuntuusingwsl-pemasangan, thenupdateWithSudoaptupdat e && sudoaptupgrade-y, menyimpanprojectsinthelinuxfilysystemforoptimalperformance.2.installphp8.3andcomposerviaond?ejsury'sppa

LaunchAnec2InstanceWithAmazonlinux, FiterInstancetype, SecureSecurityGroup, andKeePair.2.InstallLampstackByupdatingPackages, Installingapache, Mariadb, PHP, StartingServices, SecuringMySql, andTestingDoShpeBechp.3.DecoPoBeConents

Completphpfromsourceisnotnotnessaryformostprojectsbutprovidesfullcontrolforpeakformance, minimalbloat, andspecificoptimizations.2.itinvolvesconvertingphp'scsourcecodeintoexecutables, membolehkanCustomizationSunaseSuneStionStionStionStions, EnableSuneStaceStenseStenseStenseStension, enablikeSunaseSuneSteStenseStions, EnableCuSuneSteStenSiSteStenseStions, EnableCuSuneSteStension,

Chooseaci/cdplatformlikegithubactionsorgitlabciforightversionControlintegrationandminimalinfrastructure; 2.DefineAconsistentphpenvironmentingingingContainerizationWithimagesLikePhp: 8.2-cliorcoser: LatarandInsTallDepsiesVeNeSteNeSteNeSTiSciesVeMeSTiLenciesVeSTiesVeMeSTiSciSServeShoseShoseSveSnoSTOSTISVISTIESSTIESSTRISTIESSTRISTIESSTRISTIESSTRISTIESSTRISTIESSTRISTIESSA

Opcache dan JIT adalah alat teras untuk pengoptimuman prestasi Php8.0. Konfigurasi yang betul dapat meningkatkan kecekapan pelaksanaan dengan ketara; 1. Dayakan opcache dan tetapkan opcache.enable = 1, opcache.memory_consumption = 192, opcache.max_accelerated_files = 20000, opcache.validate_timestamps = 0 untuk melaksanakan caching opcode dan mengurangkan parsing overhead; 2. Konfigurasikan JIT untuk membolehkan penjejakan JIT melalui opcache.jit_buffer_size = 256m dan opcache.jit = 1254

VerifySystemRequirementsanddependencybyConfirmingOscompatibilityandInstallingessentialLibrariesandbuildtools, menggunakan packPackageManagerslikoryumtosimplifydependencymanagement.2.checkphpconfigurationandcompilationerrorsbyrunningrunnimal
