MAC自带Apache配置python3
进入终端
sudo apachectl start
直接访问localhost
解决Mac下apache 403的问题
网上查资料发现是因为Mac版本升级导致了apache策略发生变更了,所以我们修改后还是会出现403无权访问的情况。
解决方法:备份原有的httpd.conf配置文件,把同级目录下的httpd.conf.pre-update 重命名为
sudo apachectl restart
python需要开启CGI
找到
改成
<Directory "/Library/WebServer/CGI-Executables">
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
</Directory>
然后 再修改 #LoadModule cgi_module libexec/apache2/mod_cgi.so,前面有#注释,把#去掉就可以了
LoadModule cgi_module libexec/apache2/mod_cgi.so
然后修改ScriptAliasMatch,他也是被注释上的,直接把前面的#去掉就好:
接着修改#AddHandler cgi-script .cgi,也是直接把前面的#去掉,然后在后面加上 .py,以便让服务器能解析.py文件:
AddHandler cgi-script .cgi .py
sudo apachectl restart
创建Python网页
/Library/WebServer/CGI-Executables 的文件夹里新建一个index.py的文件
#!/usr/bin/python3
print ("Content-type:text/text")
print () # 空行,告诉服务器结束头部
print ('<html>')
print ('<head>')
print ('<meta charset="utf-8">')
print ('<title>Hello Word - 我的第一个 CGI 程序!</title>')
print ('</head>')
print ('<body>')
print ('<h2>Hello Word! 我是来自菜鸟教程的第一CGI程序</h2>')
print ('</body>')
print ('</html>')
```
#设置文件夹权限
chmod -Rf 777 /Library/WebServer/CGI-Executables
#访问网页
http://localhost/cgi-bin/index.py
可以看到网页内容
MAC自带Apache配置python3的更多相关文章
- 关闭mac自带apache的启动。
关闭mac自带apache的启动. sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 如果哪天 ...
- mac 10.11.6 自带apache配置记录
详细记录使用自带apache的一些问题 开启apache服务 作为2016年的新版本os,在系统偏好设置里没有网络共享了,所以可以通过终端,直接开启apache服务器: 开启apache:sudo a ...
- mac自带apache服务器开启
mac的os x操作系统自带的有apach服务器, 命令行: sudo apachectl -v 可查看自带apache版本信息 输入: sudo apachectl start 就开启了apa ...
- 前端开发中使用mac自带apache服务
场景 前端开发中,总是会有这样的需求,就是快速的写一个脚本,或者一个简单的demo页面.这时,我们需要马上可以启动一个web服务,来支持开发. 我们可以安装一个全局的cli工具,通过node服务来满足 ...
- 一网成擒全端涵盖,在不同架构(Intel x86/Apple m1 silicon)不同开发平台(Win10/Win11/Mac/Ubuntu)上安装配置Python3.10开发环境
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_200 时光荏苒,过隙白驹,即将进入2022年,著名敏捷开发语言Python也放出了3.10最终版,本次我们来展示一下在不同的系统和 ...
- Mac 自带 apache
1.启动服务器 sudo apachectl start http://localhost 能访问就ok sudo apachectl stop sudo apachectl restart ht ...
- Mac自带Apache和Php
Mac 是默认安装 apache和php,但是需要使用root用户来启用,所以请按照我下面的步骤来: 一.启用root用户1.选取系统偏好设置....2.从显示菜单中,选取“帐户”.3.点按锁图标并使 ...
- 轻盈潇洒卓然不群,敏捷编辑器Sublime text 4中文配置Python3开发运行代码环境(Win11+M1 mac)
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_210 20世纪初,几乎所有的飞机都是并列双翼结构,此时,美国著名飞行大亨霍华德·休斯认为自己的飞机不够快,助手委婉地提醒他,如果速 ...
- 在Mac OS X上配置Apache2
转载:http://www.cnblogs.com/yuanyq/p/3435022.html#2821339 最近一段时间在开发面向移动设备的网页,而且是静态网页.所以很需要一个HTTP服务器,简单 ...
随机推荐
- a=(1,)b=(1),c=(“1”) 分别是什么类型的数据
(1,)– tuple; (“1”) – str; (1) – int; >>> (2,)(2,)>>> (2)2>>> ("6&quo ...
- [bzoj 1010][HNOI 2008]玩具装箱
传送门 Description P教授要去看奥运,但是他舍不下他的玩具,于是他决定把所有的玩具运到北京.他使用自己的压缩器进行压 缩,其可以将任意物品变成一堆,再放到一种特殊的一维容器中.P教授有编号 ...
- 学JavaScript的感想小结1
学了几天的Javascript,刚开始就在想Java和JavaScript有什么不同,算了其实两个咱都不会也没多想了,带着这个好奇心学菜鸟教程,没想到还真得到了解答,瞬间兴趣提升,愿意追根溯源的教程还 ...
- 002-创建型-02-抽象工厂模式(Abstract Factory)
一.概述 抽象工厂模式提供同一个创建一系列相关或相互依赖对象的接口,无须指定它们具体的类 抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态.抽象工厂模式是指当有多个抽象角色时,使用的一 ...
- 006-多线程-集合-Set-ConcurrentSkipListSet
一.简介 ConcurrentSkipListSet是线程安全的有序的集合,适用于高并发的场景.ConcurrentSkipListSet和TreeSet,它们虽然都是有序的集合.但是,第一,它们的线 ...
- QDateTime QString
QDateTime格式化 yyyy-MM-dd hh:mm:ss QString getFormatDateStr(QDateTime dateTimeParam) { qDebug() <& ...
- 使用java自带线程池
java提供自带的线程池,而不需要自己去开发一个自定义线程池了. 线程池类ThreadPoolExecutor在包java.util.concurrent下 ThreadPoolExecutor ...
- json简单案例
1.Group类 import java.util.ArrayList; import java.util.List; class Group{ private int id; private Str ...
- iis启动异常 0x80072749
错误提示: “/”应用程序中的服务器错误. 无法向会话状态服务器发出会话状态请求.请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同 ...
- [c++]C++关键字之friend
re 1. C++关键字之friend; end 希望大家能把自己的所学和他人一起分享,不要去鄙视别人索取时的贪婪,因为最应该被鄙视的是不肯分享时的吝啬.---GOOD---