windows環境下Apache+PHP+MySQL搭建服務器

相關文件下載

下載地址
Apachehttps://www.apachehaus.com/cgi-bin/download.plx
PHPhttps://windows.php.net/download
MySQLhttps://dev.mysql.com/downloads/mysql/

MySQL

MySQL配置

當前使用的MySQL版本是8.0.18,在MySQL根目錄下新建my.ini文件,下面是基本配置

[mysql]
default-character-set=utf8[mysqld]
# 端口
port=3306
# MySQL用戶密碼加密方式
# mysql_native_password是8.0之前的加密方式,8.0以后默認是caching_sha2_password
default_authentication_plugin=mysql_native_password
# MySQL文件文件位置
basedir=E:/Server/mysql-8.0.19-winx64
# MySQL數據庫存儲位置
datadir=E:/Server/mysql-8.0.19-winx64/data/
# 字符集
character-set-server=utf8
# 默認引擎
default-storage-engine=MyISAM
# 最大連接數
max_connections=100
# sql模式
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
初始化數據庫

用管理員身份打開cmd,切換到MySQL的bin目錄

輸入命令 mysqld --initialize-insecure --user=mysql 初始化數據庫,該命令行表示初始化數據庫,并設置密碼為空。

也可以使用 mysqld --initialize --console 進行初始化,會在控制臺打印過程,其中有MySQL的初始化密碼,用初始化密碼登錄并修改。

安裝與卸載window服務

輸入命令 mysqld --install MySQL8 安裝windows服務,后面的服務名稱為可選項,默認是MySQL

輸入命令 sc start MySQL8 啟動服務,sc stop MySQL8停止服務,sc delete MySQL8 卸載服務


PHP

php配置

PHP版本7.2.28-nts-v15

下載php時,會有ts和nts兩個版本,前者是線程安全,后者是非線程安全,區別主要在線程是否安全,數據是否會污染,運行性能等方面,選擇不同版本,Apache的php相關配置也不同。ts版本,Apache直接載入php7apache2_4.dll模塊即可

php跟目錄下有兩個php配置文件,php.ini-developmentphp.ini-production,兩個文件沒有太多區別,一個用于開發環境,一個用于生產環境,區別也就是開發環境的配置能夠看到更多的錯誤警告。

復制其中一個,后綴更改為ini,按需求修改部分配置

# 開啟錯誤日志
error_log = E:/Server/php-7.2.28-nts-Win32-VC15-x64/php7.2.28nts.log# post傳輸數據的最大限制,按需更改
post_max_size = 8M# 打開php擴展目錄
extension_dir = "ext"# 存放上傳文件的臨時文件夾
upload_tmp_dir = "C:\Windows\Temp"# 上傳文件的最大限制,按需修改
upload_max_filesize = 2M# 單次請求允許上傳的最大文件數量,按需修改
max_file_uploads = 20# 啟用php擴展,按需修改,以下列舉了一些常用擴展
extension=curl
extension=fileinfo
extension=gd2
extension=mbstring
extension=mysqli
extension=openssl
extension=pdo_mysql
extension=pdo_sqlite
extension=soap# 設置php時區
date.timezone = Asia/Shanghai# php session保存地址,需要手動創建目錄,不然在運行和session相關的程序時會報錯
session.save_path = "E:/Server/tmp"

將php目錄添加至系統環境變量,打開新的cmd窗口,運行php -v查看php版本,查看php是否正常運行

Apache

apache配置

按需求修改部分配置conf/httpd.conf

# apache目錄
Define SRVROOT "/Server/Apache24"# 監聽端口
Listen 80# 啟用重寫模塊
LoadModule rewrite_module modules/mod_rewrite.so# 添加虛擬機配置文件
Include conf/vhosts/*.conf

其余配置可以參考Apache配置介紹,配置完成后可以使用httpd -t來測試配置文件是否正確,配置文件錯誤httpd服務不能啟動。

cmd轉到apache下的bin目錄,運行httpd -k install安裝httpd服務

也可以選擇使用bin目錄下的ApacheMonitor.exe來管理httpd服務

瀏覽器訪問本機地址,可以看到apache默認的網頁

為php配置fast-cgi

可以在這里下載mod_fcgid,要選對和apache對應的vc版本。

mod_fcgid.so復制到apache的modules目錄下,
在配置文件中添加LoadModule fcgid_module modules/mod_fcgid.so
在適當的位置添加以下配置,下面的設置是為php設置fast-cgi的,可以全局配置,也可以為每個網站或目錄單獨配置,可以靈活運用,甚至可以為每個網站程序配置不同的php程序,具體可以參考Apache配置介紹

AddHandler fcgid-script .php
FcgidWrapper "E:/Server/php-7.2.28-nts-Win32-VC15-x64/php-cgi.exe" .php# 為Options配置添加ExecCGI
Options ExecCGI

配置好php網站后重啟httpd服務,
以上是最小的配置更改,更多詳細配置可以按需求百度

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/281249.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/281249.shtml
英文地址,請注明出處:http://en.pswp.cn/news/281249.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

angular.js國際化模塊

最近需要將一個項目轉化成英文的&#xff0c; 于是發現一個angular模塊angular-translate&#xff0c;實現如下&#xff1a; 1.安裝包 bower install angular-translate bower install angular-translate-loader-static-files //然后在頁面引用進去 <script src"/angul…

觸屏網站如何實現返回并刷新

目的 在會員中心等頁面常常會遇到進入內頁修改信息&#xff0c;返回前一個頁面需要更新信息的場景。 思路 用COOKIE記錄當前頁面是否需要刷新&#xff0c;返回之后再刷新一次頁面。 方案 下載js.cookie.js然后引入到項目中 https://github.com/js-cookie/js-cookie 先來一個最簡…

更快,更強的.NET 7 發布了

.NET Conf 2022 在昨晚(11?8?) 11 點 正式開始了&#xff0c;為期三天的會議&#xff08;11?8-10?&#xff09;&#xff0c; 圍繞 .NET 7 展開。相信各位?伙伴都已經開始安裝 .NET 7 正式版本還有以及相關的開發?具。這次 .NET 7 圍繞傳統的 C# &#xff0c;ASP.NET Core…

Web服務器 - Nginx配置介紹

nginx的配置相對簡單&#xff0c;總體來說分為5種模塊 全局塊&#xff1a;配置影響nginx全局的指令。一般有運行nginx服務器的用戶組&#xff0c;nginx進程pid存放路徑&#xff0c;日志存放路徑&#xff0c;配置文件引入&#xff0c;允許生成worker process數等。events塊&…

jvm(Java virtual machine) JVM架構解釋

2019獨角獸企業重金招聘Python工程師標準>>> JVM 架構解釋 每個Java開發者都知道通過JRE【Java運行環境】執行字節碼。 但是很多人都不知道JRE是JVM實現的事實。JVM負責執行字節碼的分析 代碼的解釋和運行。 我們應該了解JVM的架構&#xff0c;這對開發者來說是很重…

Hyper-V 嵌套虛擬化

先決條件運行 Windows Server 2016 或Windows 10 周年更新的 Hyper-V 主機。運行 Windows Server 2016 或Windows 10 周年更新的 Hyper-V VM。配置版本為 8.0 或更高的 Hyper-V VM。采用 VT-x 和 EPT 技術的 Intel 處理器&#xff08;AMD-V技術的暫時不支持&#xff09;>Set…

簡單的面試題簡解思路(搜集)

1. 統計字符串中單詞出現次數 "hi how are you i am fine thank you youtube am am "&#xff0c;統計"you"出現的次數。 方法一 : split() function wordCount(str,word){var str str || "";var word word || "";var strArr s…

WinForm(十五)窗體間通信

在很多WinForm的程序中&#xff0c;會有客戶端之間相互通信的需求&#xff0c;或服務端與客戶端通信的需求&#xff0c;這時就要用到TCP/IP的功能。在.NET中&#xff0c;主要是通過Socket來完成的&#xff0c;下面的例子是通過一個TcpListerner作為監聽&#xff0c;等待TcpClie…

905. 按奇偶排序數組

1// 905. 按奇偶排序數組 2/** 3 * param {number[]} A 4 * return {number[]} 5 */ 6var sortArrayByParity function(A) { 7 return A.filter(value > value % 2 0).concat( 8 A.filter(value > value % 2 1) 9 )10}; 轉載于:https://www.cnblogs.com/…

關于Java開發需要注意的十二點流程

1.將一些需要變動的配置寫在屬性文件中 比如&#xff0c;沒有把一些需要并發執行時使用的線程數設置成可在屬性文件中配置。那么你的程序無論在DEV環境中&#xff0c;還是TEST環境中&#xff0c;都可以順暢無阻地運行&#xff0c;但是一旦部署在PROD上&#xff0c;把它作為多線…

Unity經典游戲教程之:雪人兄弟

版權聲明&#xff1a; 本文原創發布于博客園"優夢創客"的博客空間&#xff08;網址&#xff1a;http://www.cnblogs.com/raymondking123/&#xff09;以及微信公眾號"優夢創客"&#xff08;微信號&#xff1a;unitymaker&#xff09;您可以自由轉載&#x…

使用webpack搭建個性化項目

安裝主包 yarn add webpack webpack-cli webpack-dev-server -D根據項目實際需求安裝loaders&#xff0c;webpack-loaders列表 根據項目實際需求安裝插件&#xff0c; webpack-plugins列表 常用包列表 包名說明webpackwebpack主程序&#xff0c;配置列表webpack-cliwebpack…

.NET周報【11月第1期 2022-11-07】

國內文章開源安全賦能 - .NET Conf China 2022https://mp.weixin.qq.com/s/_tYpfPeQgyEGsnR4vVLzHg.NET Conf China 2022 是面向開發人員的社區峰會&#xff0c;延續 .NET Conf 2022 的活動&#xff0c;慶祝 .NET 7 的發布和回顧過去一年來 .NET 在中國的發展成果&#xff0c;它…

React - 狀態提升

從入門的角度來聊一下React 的狀態提升。我們先來看一下React官網是怎么介紹這一概念的&#xff1a;使用 react 經常會遇到幾個組件需要共用狀態數據的情況。這種情況下&#xff0c;我們最好將這部分共享的狀態提升至他們最近的父組件當中進行管理。很簡單的一句介紹&#xff0…

saltstack(三) --- salt-httpapi

以下操作均在master上操作 1. 安裝api netapi modules&#xff08;httpapi&#xff09;有三種&#xff0c;分別是rest_cherrypy、rest_tornado、rest_wsig&#xff0c;接下來要講的是rest_cherrypydoc&#xff1a;https://docs.saltstack.com/en/latest/ref/netapi/all/salt.ne…

c++實現二叉搜索樹

自己實現了一下二叉搜索樹的數據結構。記錄一下&#xff1a; #include <iostream>using namespace std;struct TreeNode{int val;TreeNode *left;TreeNode *right;TreeNode(int value) { valvalue; leftNULL; rightNULL; } };class SearchTree{public:SearchTree();~Sear…

一款自用的翻譯小工具,開源了

一款自用的翻譯小工具&#xff0c;開源了TranslationTool作者&#xff1a;WPFDevelopersOrg - 唐宋元明清|驚鏵原文鏈接&#xff1a;https://github.com/Kybs0/TranslationTool此項目使用WPF MVVM開發。框架使用大于等于.NET461。Visual Studio 2019。最初是支持以下&#xff1…

JS使用按位異或方式加密字符串

按位異或加密字符串&#xff0c;字符串加解密都是該函數 缺陷是加密密鑰使用的字符最好不要出現需要加密的字符串中的字符&#xff0c;一旦出現原字符與加密字符一樣額情況&#xff0c;異或結果為0&#xff0c;導致不能還原字符串&#xff0c;可以考慮更改算法避免這種情況 im…

SCSS 實用知識匯總

1、變量聲明 $nav-color: #F90; nav {//$width 變量的作用域僅限于{}內$width: 100px;width: $width;color: $nav-color; }.a {//報錯&#xff0c;$width未定義width: $width; } 2、父選擇器& scss代碼&#xff1a; article a {color: blue;&:hover { color: red } } 編…

【ELK集群+MQ】通用部署方案以及快速實現MQ發布訂閱服務功能

前言&#xff1a;大概一年多前寫過一個部署ELK系列的博客文章&#xff0c;前不久剛好在部署一個ELK的解決方案&#xff0c;我順便就把一些基礎的部分拎出來&#xff0c;再整合成一期文章。大概內容包括&#xff1a;搭建ELK集群&#xff0c;以及寫一個簡單的MQ服務。如果需要看一…