欢迎光临杨雨的个人博客站!

杨雨个人网站-杨雨个人博客-杨照佳

杨雨个人博客网站

关注互联网和搜索引擎的个人博客网站

首页 > WEB开发 > PHP >

如何保护Apache中的特定URL

发布时间:2019-05-24  编辑:杨雨个人博客网站   点击:   

有时我们需要在我们的网站中保护一个或几个特定的URL,并且所有其他网站URL仍保留公共访问权限。使用站点中的目录和文件结构是非常容易管理的,但是cakephp等框架的路由结构不同于目录结构,我们无法在目录层面上保护它。本篇文章将介绍在Apache中保护特定的URL。

如何保护Apache中的特定URL

例如,一个站点有一个安全区域,如http://example.com/admin/“,我们只有授权用户或IP才能访问/admin/部分。

1、在特定URL上设置基于IP的限制

首先编辑apache配置文件,并在virtualhost中添加以下条目。这将仅允许/admin URL访问192.168.10.11和123.45.67.89 IP。

<Location /admin>
  Order deny,allow
  Deny from all
  Allow from 192.168.10.11
  Allow from 123.45.67.89
</Location>

保存Apache配置文件并使用以下命令之一重新启动Apache服务。

# service httpd restart          #  For RHEL based systems
$ sudo service apache2 restart    # For Debian based systems

我们尝试从任意其他IP访问你的站点。同时还要在配置文件中检查给定的ip。。

2、在特定URL上设置用户身份验证

编辑apache配置文件,并在网站virtualhost部分添加以下内容。

<Location /admin>
  AuthUserFile /var/www/htpasswd/.htpasswd
  AuthName "Password Protected Area"
  AuthType Basic
  Require valid-user
</Location>

现在使用下面的命令创建新的htpasswd文件并添加一个新用户。

# htpasswd -cm /var/www/htpasswd/.htpasswd myuser

New password:
Re-type new password:
Adding password for user myuser

重新启动Apache并访问你的网站URL,它将提示登录的详细信息。

# service httpd restart          #  For RHEL based systems
$ sudo service apache2 restart    # For Debian based systems

本篇文章到这里就已经全部结束了,更多其他精彩内容大家可以关注PHP中文网的PHP视频教程栏目! 本文地址:http://itbyc.com/php/20074.html
转载请注明出处。

分享是一种快乐,也是一种美德:
博客首页 | WEB开发 | 网站运营 | CMS使用教程 滇ICP备14002061号-1