Apache - 针对Wordpress的rewrite

之前弄过nginx下的,这次新弄了个VPS,懒得配环境,直接上LAMPP...于是就得找找apache了

首先是确认apache的配置文件httpd.conf里的rewrite模块打开:

LoadModule rewrite_module modules/mod_rewrite.so

然后还是在httpd.conf里看网站的根目录这个节点中的这几个字段像下面这样即可(根目录根据自己的设置会不同):

 

<Directory “c:/www”>

    ……

    AllowOverride All

    Order allow,deny

    Allow from all

    ……

</Directory>

然后在wordpress的根目录(同理,根目录根据自己的设置会不同,并且rewrite的根目录也一样)下创建“.htaccess”文件,内容如下

 

# BEGIN WordPress

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /wordpress/

RewriteRule ^index/.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /wordpress/index.php [L]

</IfModule>

# END WordPress

即可。

这些话的意思就是当没有找到页面的时候,把这个请求交给wordpress的index.php处理,转向需要的页面。

而实际中,在wordpress里设置完成之后,下面会有.htaccess的内容,如果你根目录下的这个文件可写的话,wp会直接写入。如果不可写,则需要手动把这些东西贴进去。

<think>我们正在参考用户提供的多个引用,特别是引用[1]和引用[2]中提到了使用Apache部署WordPress的步骤。 用户需求:使用Apache部署WordPress的详细步骤。 根据引用[1]: - 步骤1:为WordPress站点创建一个新的Apache配置文件wp-site.conf,使用命令:sudo vi /etc/apache2/sites-available/wp-site.conf - 但引用[1]只给出了这一条命令,没有详细内容。 引用[2]中提到: - 配置服务器(Apache)是其中一个步骤。 引用[3]提到使用Docker部署,但用户要求使用Apache直接部署,所以我们主要参考非Docker方法。 引用[4]提到了宝塔面板,但用户要求使用Apache,所以我们可以忽略面板方式。 因此,我们需要整合一个详细的步骤,包括: 1. 安装必要的软件:Apache, MariaDB/MySQL, PHP 2. 配置数据库 3. 下载并设置WordPress 4. 配置Apache 5. 完成安装 注意:用户要求使用Apache,所以我们重点在Apache的配置上。 详细步骤: 步骤1:安装Apache、MariaDB(或MySQL)和PHP 在Ubuntu上,可以使用以下命令: ``` sudo apt update sudo apt install apache2 mariadb-server php php-mysql libapache2-mod-php php-cli php-gd php-curl php-zip php-xml php-mbstring ``` 步骤2:配置MariaDB数据库 - 启动MariaDB服务并设置开机自启:`sudo systemctl enable --now mariadb` - 运行安全安装脚本:`sudo mysql_secure_installation`(设置root密码,并回答安全问题) - 登录MariaDB:`sudo mysql -u root -p` - 创建WordPress数据库和用户: ```sql CREATE DATABASE wordpress; CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'your_strong_password'; GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost'; FLUSH PRIVILEGES; EXIT; ``` 步骤3:下载并解压WordPress - 进入临时目录:`cd /tmp` - 下载最新版WordPress:`curl -O https://wordpress.org/latest.tar.gz` - 解压:`tar xzvf latest.tar.gz` - 将解压后的WordPress目录移动到Apache的网站根目录(通常为/var/www/html): `sudo mv wordpress /var/www/html/your_domain` (这里your_domain替换为你的域名或目录名) - 设置权限: `sudo chown -R www-data:www-data /var/www/html/your_domain` `sudo chmod -R 755 /var/www/html/your_domain` 步骤4:配置Apache虚拟主机 - 创建一个新的虚拟主机配置文件,如引用[1]中提到的wp-site.conf: `sudo vi /etc/apache2/sites-available/your_domain.conf` - 在文件中添加以下内容(替换your_domain和路径): ``` <VirtualHost *:80> ServerAdmin admin@your_domain ServerName your_domain ServerAlias www.your_domain DocumentRoot /var/www/html/your_domain <Directory /var/www/html/your_domain> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> ``` - 启用该站点:`sudo a2ensite your_domain.conf` - 启用Apacherewrite模块:`sudo a2enmod rewrite` - 禁用默认站点(可选):`sudo a2dissite 000-default.conf` - 重启Apache:`sudo systemctl restart apache2` 步骤5:完成WordPress安装 - 打开浏览器,访问你的域名(或服务器IP地址) - 按照WordPress安装向导操作,在需要填写数据库信息时: - 数据库名:wordpress - 用户名:wpuser - 密码:your_strong_password(之前设置的) - 数据库主机:localhost - 表前缀:保持默认(或按需修改) - 运行安装,然后设置网站标题、管理员用户名和密码等。 注意:如果服务器没有域名,可以使用IP地址,那么在配置文件中ServerName和ServerAlias可以暂时设置为IP地址,或者留空。 以上步骤综合了引用中提到的部分,并补充了完整的流程。 引用说明: - 步骤1和步骤4参考了引用[1]中关于创建Apache配置文件的步骤。 - 步骤2和步骤3参考了引用[2]中关于数据库配置和服务器配置的部分。 根据用户要求,我们提供了详细的步骤。 现在,生成相关问题: </think>以下是使用Apache部署WordPress的详细步骤,整合了Linux系统(如Ubuntu)的最佳实践: --- ### **步骤1:安装必要组件** ```bash # 更新软件包列表 sudo apt update # 安装Apache、MariaDB、PHP及扩展 sudo apt install apache2 mariadb-server php libapache2-mod-php php-mysql php-curl php-gd php-mbstring php-xml php-zip ``` --- ### **步骤2:配置数据库** 1. **启动MariaDB并设置安全选项**: ```bash sudo systemctl start mariadb sudo mysql_secure_installation # 按提示设置root密码、移除匿名用户等 ``` 2. **创建WordPress专用数据库和用户**: ```sql CREATE DATABASE wordpress_db; CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'your_strong_password'; GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wp_user'@'localhost'; FLUSH PRIVILEGES; EXIT; ``` --- ### **步骤3:下载并配置WordPress** ```bash # 下载最新版WordPress cd /tmp wget https://wordpress.org/latest.tar.gz tar -xzvf latest.tar.gz # 移动文件到Apache根目录并设置权限 sudo mv wordpress /var/www/html/your_site sudo chown -R www-data:www-data /var/www/html/your_site sudo chmod -R 755 /var/www/html/your_site ``` --- ### **步骤4:配置Apache虚拟主机** 1. **创建站点配置文件**: ```bash sudo nano /etc/apache2/sites-available/your_site.conf ``` 添加以下内容(替换`your_domain.com`为实际域名或IP): ```apache <VirtualHost *:80> ServerAdmin admin@your_domain.com ServerName your_domain.com ServerAlias www.your_domain.com DocumentRoot /var/www/html/your_site <Directory /var/www/html/your_site> Options FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> ``` 2. **启用站点并重载Apache**: ```bash sudo a2ensite your_site.conf sudo a2enmod rewrite # 启用URL重写 sudo systemctl reload apache2 ``` --- ### **步骤5:完成WordPress安装** 1. 浏览器访问 `http://your_domain.com`(或服务器IP)。 2. 按向导填写数据库信息: - **数据库名**:`wordpress_db` - **用户名**:`wp_user` - **密码**:`your_strong_password` - **主机**:`localhost` - **表前缀**:默认`wp_`(建议修改为自定义前缀如`wpsec_`增强安全性) 3. 设置网站标题、管理员账号和密码。 --- ### **验证与测试** - **访问网站**:浏览器打开域名/IP,应显示WordPress首页。 - **文件权限检查**: ```bash ls -l /var/www/html/your_site # 确保所有者是www-data ``` - **错误排查**: ```bash tail -f /var/log/apache2/error.log # 实时查看Apache错误日志 ``` --- ### **关键安全措施** 1. **限制Apache目录访问**: ```apache # 在虚拟主机配置中添加 <Directory /var/www/html/your_site/wp-content/uploads> AllowOverride None Require all granted </Directory> ``` 2. **配置防火墙**: ```bash sudo ufw allow 'Apache Full' # 允许HTTP/HTTPS流量 ``` --- ### 相关问题 1. 如何为WordPress配置HTTPS加密? 2. WordPress出现“无法建立数据库连接”错误如何解决? 3. 如何优化Apache以提高WordPress性能? 4. WordPress多站点部署与单站点有何配置差异? [^1]: [Ubuntu上使用Apache、MariaDB、PHP安装WordPress](引用1) [^2]: [WordPress部署指南:数据库与服务器配置](引用2)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值